我正在研究一个原型,并且想构建一个多级导航 - 但不是通过循环遍历数组。我有一个 $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>';
}