Smartyによるツリー配列処理

昨日問題に遭遇しました。 私のような配列があります:



1 =>配列(

「タイトル」=>「タイトル1」、

'sub' =>配列(

2 =>配列(

'title' => title 2 '、

'sub' =>配列(

3 =>配列(

「タイトル」=>「タイトル3」









);



スマートなツールで処理しても何も判明しませんでした-関数内の無限ループをサポートしていません。 PHPレベルでは、これは問題ではありません。1つの出力関数を介して配列全体を実行するだけで、サブ要素が見つかったら、サブ要素の配列だけで、さらに類推して同じ関数を再度呼び出します。



たぶん誰かがスマートを使用してそのようなツリー配列の出力を実装しましたか? :)



更新:フォーラムで見つけたオプションを確認します。





別のツリーテンプレートを使用して行われます。



{if $ tree}

{foreach from = $ tree item = "item"}

{$アイテム}

{if $ item.subtree}

{include file = "tree.tpl" tree = $ item.subcategories}

{/ if}

{/ foreach}

{/ if}



メインテンプレートは次のように呼び出されます。

{include file = "tree.tpl" tree = $ tree}



$ tree-これはツリー構造を持つ配列です。



ここから取られた



All Articles