我有一个在 php 中创建的带有递归函数的数组,我不知道有多少维,如何在 Smarty 中使用?
我尝试使用此代码:
{foreach $myArr as $items}
<li>
{$items.title}
{if $item.submenu}
<ul>
{foreach $items.submenu as $items2}
<li>{$items2.title}</li>
{/foreach}
</ul>
{/if}
</li>
{/foreach}
但是此代码仅适用于 2 个级别,可能是我的数组有 3 个或 4 个或...级别。
更新:
我找到了解决方案,在我的解决方案中我使用了 Smarty 功能:
{function name=menu level=0}
<ul>
{foreach $data as $items}
<li>
<a href="{$items.url}">
{$items.title}
</a>
{if is_array($items.submenu)}
{menu data=$items.submenu level=$level+1}
{/if}
</li>
{/foreach}
</ul>
{/function}
{menu data=$menuItems}