我正在尝试从MySQL生成的数据中创建树。
这个问题以前有人问过,但实际上是关于创建数组的。所以数组创建得很好。我正在使用这个问题的答案。
这是我得到的数组:
Array
(
[0] => Array
(
[employee_id] => 1
[organization_id] => 1
[parent_organization_id] => 0
[full_name] => Mohammad Salim Khan
[employee_order] => 1
[children] => Array
(
[0] => Array
(
[employee_id] => 2
[organization_id] => 2
[parent_organization_id] => 1
[full_name] => Ali Khan
[employee_order] => 2
[children] => Array
(
[0] => Array
(
[employee_id] => 5
[organization_id] => 4
[parent_organization_id] => 2
[full_name] => Nadeem Khan
[employee_order] => 3
[children] => Array
(
[0] => Array
(
[employee_id] => 7
[organization_id] => 5
[parent_organization_id] => 4
[full_name] => Sajjad Ali
[employee_order] => 4
)
)
)
)
)
[1] => Array
(
[employee_id] => 3
[organization_id] => 3
[parent_organization_id] => 1
[full_name] => Kamran Durrani
[employee_order] => 2
)
)
)
)
但我坚持将这些数据放在<ul>
/<li>
列表中。
怎样才能把它放在无序列表中,以便我得到这样的列表:
<ul>
<li>Mohammad Salim Khan</li>
<ul>
//1
<li>Ali Khan</li>
<ul>
<li>Nadeem Khan</li>
<ul><li>Sajjad Ali</li></ul>
//2
<li>Kamran Durrani</li>
</ul>
</ul>
更新:
- 穆罕默德·萨利姆·汗
- 阿里汗
- 纳迪姆汗
- 萨贾德·阿里
- 卡姆兰·杜兰尼
这变得非常令人困惑,因为李氏有无限的可能性。
这是递归(调用自身的函数(的情况。从 $myLIst 中的列表开始:
function showList ($myList)
{
echo "<ul>";
foreach ($myList as $row)
{
echo ("<li>{$row ['full_name']}</li>'n");
if (isset ($row ['children']))
showList ($row ['children']);
}
echo "</ul>'n";
}