2

有人可以帮我把这段代码翻译成智能友好,取自这里

function outputCategories($categories, $startingLevel = 0)  
{

    foreach ($categories as $key => $category)
    { 
        if (count($category['children']) > 0)
        {
            echo '<li><a title="'.$category['name'].'" href="'.$category['url'].'">'.$category['name'].'</a><ul>';
            outputCategories($category['children'], $startingLevel+1);
            echo "</li>";
        }
        else
        {
            echo '<li><a title="'.$category['name'].'" href="'.$category['url'].'">'.$category['name'].'</a></li>';
        }
    }
    echo "</ul>";
    return self;
}

我可以使用以下行生成单级类别:

{foreach from=$hsitemap item=c name=hsitemap}
 {if $c.parent_id ==0 }
<li><h2><a title="{$c.site_name}" href="{$c.site_url}">{$c.site_name}</a></h2><ul>
    {foreach item=d from=$c.children name=sitemap} 
<li><a title="{$d.site_name}" href="{$d.site_url}">{$d.site_name}</a></li>
    {/foreach}
{else}  
<li><h2><a title="{$c.site_name}" href="{$c.site_url}">{$c.site_name}</a></h2><ul>
{/if}
</ul>
</li>
{/foreach}  
</ul>

但现在我有一个多层次的要求,请帮我解决这个问题。

4

2 回答 2

0

您应该创建一个包含每个新级别的包含文件...将循环嵌套到一个新文件或创建一个 smarty 函数,然后包含它或调用 smarty 函数,然后在 IT 中调用自身(或调用功能)...

于 2012-08-23T05:52:03.687 回答
0

您可以创建可以调用自身的函数,参见示例 7.43。在文档中。

于 2012-08-23T10:16:17.250 回答