我正在研究一个原型,并且想构建一个多级导航 - 但不是通过循环遍历数组。我有一个 $depth 和一个 $children,它们应该确定导航的深度和每个级别的子级数量。所以 $depth = 4, $children = 8 将产生 4096 个菜单项。
这是我想要的输出片段:
<ul>
<li class="level-1">
<a href="#">Subject 1</a>
<ul>
<li class="level-2">
<a href="#">Subject 1.1</a>
<ul>
<li class="level-3">
<a href="#">Subject 1.1.1</a>
</li>
...
</ul>
</li>
...
</ul>
</li>
...
</ul>
到目前为止,我已经尝试过这个,但我无法理解它:(
function draw_list ($depth, $children) {
echo '<ul>';
for ($i = 0; $i < $children; $i++) {
echo '<li>' . ($i++);
$depth--;
if ($depth > 0) {
echo draw_list($depth, $children);
}
echo '</li>';
}
echo '</ul>';
}