Código:
foreach($elementsData as $k=>$v){
// nivel 1
echo '<li id="'.$v['Category']['id'].'"> '.$v['Category']['name'];
if($v['children']){
// nivel 2
echo '<ul>';
foreach($v['children'] as $k2 => $v2){
//echo '<li id="'.$v2['Category']['id'].'"> '.$v2['Category']['name'];
//if($v2['children']){ ... }
}
echo '</ul>';
echo '</li>';
}else{
echo '</li>';
}
}
Quiero mostrar un árbol anidado.
PD: se trabajar con funciones, cakephp, prototype, pero esta función recursiva no la veo.
Aquí tengo el codigo para recorre un árbol de 5 niveles
Código:
// solo del 1 al 5 nivel del arbol.
if($elementsData){
echo '<ul id="mytree-standard">';
foreach($elementsData as $k=>$v){
// nivel 1
echo '<li id="'.$v['Category']['id'].'"> '.$v['Category']['name'];
if($v['children']){
// nivel 2
echo '<ul>';
foreach($v['children'] as $k2 => $v2){
echo '<li id="'.$v2['Category']['id'].'"> '.$v2['Category']['name'];
// nivel 3
if($v2['children']){
echo '<ul>';
foreach($v2['children'] as $k3 => $v3){
echo '<li id="'.$v3['Category']['id'].'"> '.$v3['Category']['name'];
// nivel 4
if($v3['children']){
echo '<ul>';
foreach($v3['children'] as $k4 => $v4){
echo '<li id="'.$v4['Category']['id'].'"> '.$v4['Category']['name'];
// nivel 5
if($v4['children']){
echo '<ul>';
foreach($v4['children'] as $k5 => $v5){
echo '<li id="'.$v5['Category']['id'].'"> '.$v5['Category']['name'].'</li>';
}
echo '</ul>';
echo '</li>';
}else{
echo '</li>';
}
}
echo '</ul>';
echo '</li>';
}else{
echo '</li>';
}
}
echo '</ul>';
echo '</li>';
}else{
echo '</li>';
}
}
echo '</ul>';
echo '</li>';
}else{
echo '</li>';
}
}
echo '</ul>';
}
?>
saludos.