【发布时间】:2014-01-30 09:17:38
【问题描述】:
我有一个带有title 和children 索引的数组。
title 始终不为空。 children 是一个数组,为空或非空。
任何children 都有title 和children 等等。
$myArray = [
0 => [
'title' => 'N1',
'children' =>
[
0 =>
[
'title' => 'N11',
'children' =>
[
0 =>
[
'title' => 'N111',
'children' => [],
],
],
],
],
],
1 =>
[
'title' => 'N2',
'children' =>
[
0 =>
[
'title' => 'N21',
'children' =>
[],
],
],
],
];
现在,我想用这个数组创建一个下拉菜单。
我在从这个数组创建无序列表(ul、li)时遇到问题。
我希望我的结果是这样的:
<ul>
<li>N1
<ul>
<li>N11
<ul>
<li>N111</li>
</ul>
</li>
</ul>
</li>
<li>N2
<ul>
<li>N21</li>
</ul>
</li>
</ul>
【问题讨论】:
-
好吧,问题说得很好。你有任何代码吗?首先,您需要一个带有
foreach循环的函数,然后要完成它,它需要是递归的。 -
初始代码中的问题是 printMenu 函数中的 $array 和 $item 变量引用了最顶层运行的值。执行以下操作(在递归函数之外循环)
-
啊,你确实有过初步尝试——为什么要删除它?
-
因为我认为它愚蠢地无关紧要,对不起