【发布时间】:2012-10-10 12:13:59
【问题描述】:
我很难理解RecrusiveIteratorIterator 和亲戚们遍历多维页面数组以在 PHP 中构建多级菜单。
通常我只是创建一个循环遍历关卡的函数,并调用自身循环遍历所有子级。但我想利用 PHP 中的迭代器接口来改进我的代码。
我的数组如下所示:
$pages = array(
new Page(1, 'Home'),
new Page(2, 'Pages', array(
new Page(3, 'About'),
new Page(4, 'Contact')
)),
new Page(5, 'Categories', array(
new Page(6, 'Clothing'),
new Page(7, 'DVDs')
))
);
Page 构造函数中的参数只是页面 ID 和页面名称。
如何使用 PHP 的迭代器来构建像这样的菜单?
<ul>
<li>Home</li>
<li>Pages
<ul>
<li>About</li>
<li>Contact</li>
</ul>
</li>
<li>Categories
<ul>
<li>Clothing</li>
<li>DVDs</li>
</ul>
</li>
</ul>
【问题讨论】:
标签: php html recursion iterator spl