如何使用 PHP 中的 <ul> 打印链表
How can I print a linked list by using <ul> in PHP
我想使用 <ul>
元素打印以下 table 数据。
#id Category Parent
1 Electronics null
2 Food null
3 TV 1
4 Burger 2
5 Cake 2
就像这样:
<ul>
<li>Electronics
<ul>
<li>TV</li>
</ul>
</li>
<li>Food
<ul>
<li>Burger</li>
<li>Cake</li>
</ul>
</li>
</ul>
- 电子产品
- 电视
- 食物
- 汉堡
- 蛋糕
我正在使用 Codeigniter 框架 (PHP)。尝试使用递归函数,但没有成功。
这是我的代码。它可以被优化,但它现在可以完成工作:) :
echo'<ul>';
foreach($categories as $value)
{
if($value['Parent'] == null)
{
echo '<li>'.$value['Category'];
$noChildren = true;
foreach ($categories as $subValue)
{
if($subValue['Parent'] == $value['id'])
{
if($noChildren == true)
{
$noChildren = false;
echo '<ul>';
}
echo'<li>'.$subValue['Category'].'</li>';
}
}
if ($noChildren == false)
{
echo'</ul>';
}
}
}
echo'</ul>';
我想使用 <ul>
元素打印以下 table 数据。
#id Category Parent
1 Electronics null
2 Food null
3 TV 1
4 Burger 2
5 Cake 2
就像这样:
<ul>
<li>Electronics
<ul>
<li>TV</li>
</ul>
</li>
<li>Food
<ul>
<li>Burger</li>
<li>Cake</li>
</ul>
</li>
</ul>
- 电子产品
- 电视
- 食物
- 汉堡
- 蛋糕
我正在使用 Codeigniter 框架 (PHP)。尝试使用递归函数,但没有成功。
这是我的代码。它可以被优化,但它现在可以完成工作:) :
echo'<ul>';
foreach($categories as $value)
{
if($value['Parent'] == null)
{
echo '<li>'.$value['Category'];
$noChildren = true;
foreach ($categories as $subValue)
{
if($subValue['Parent'] == $value['id'])
{
if($noChildren == true)
{
$noChildren = false;
echo '<ul>';
}
echo'<li>'.$subValue['Category'].'</li>';
}
}
if ($noChildren == false)
{
echo'</ul>';
}
}
}
echo'</ul>';