我想使用<ul>
元素打印下表数据。
#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)。尝试使用递归函数,但没有运气。
答案 0 :(得分:0)
这是我的代码。它可以进行优化,但它现在可以完成工作:):
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>';