Witam.
Wymyśliłem sobie, że zaciągnę dane z bazy i zapiszę do tablicy o takiej strukturze:
$tab_menu_top[1][0][145] = 'O Firmie';
$tab_menu_top[2][145][542] = 'podkategoria firmy1';
$tab_menu_top[2][145][415] = 'podkategoria firmy2';
$tab_menu_top[3][415][987] = 'podkategoria podkategorii firmy2';
$tab_menu_top[2][145][478] = 'podkategoria firmy3';
$tab_menu_top[1][0][45] = 'Oferta';
$tab_menu_top[1][0][451] = 'Kontakt';
Czyli [poziom][id rodzica][unikalne id]
Wyświetlam menu w taki oto sposób:
foreach($tab_menu_top[1][0] AS $key => $val) {
echo '<br><b>'.$key.' - '.$val.'</b><br>'; //!WYŚMIETLAM
if($levels >= 2) {
for($i=2;$i<=$levels;$i++) {
$tab_next_level_2 = $tab_menu_top[$i][$key];
if(!empty($tab_next_level_2)) { foreach($tab_next_level_2 AS $key2 => $val2) {
echo $key2.' - '.$val2.'<br>'; //!WYŚMIETLAM
$tab_next_level_3 = $tab_menu_top[3][$key2];
if(!empty($tab_next_level_3)) {
$tab_next_level_3 = $tab_menu_top[3][$key2];
foreach($tab_next_level_3 AS $key3 => $val3) {
echo $key3.' - '.$val3.'<br>'; //!WYŚMIETLAM
}
}
}
}
}
}
}
Wynik powyższego kodu:
145 - O Firmie
542 - podkategoria firmy1
415 - podkategoria firmy2
987 - podkategoria podkategorii firmy2
478 - podkategoria firmy3
45 - Oferta
451 - Kontakt
Problem w tym, że chciałbym to zrobić jakoś bardziej uniwersalnie, żeby nie musiał każdego poziomu dodawać z palca ponieważ może być nawet 20 poziomów,
czy ktoś mnie naprowadzi co robię źle ? może struktura tablicy jest zła ?