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) { if($levels >= 2) { for($i=2;$i<=$levels;$i++) { $tab_next_level_2 = $tab_menu_top[$i][$key]; foreach($tab_next_level_2 AS $key2 => $val2) { $tab_next_level_3 = $tab_menu_top[3][$key2]; $tab_next_level_3 = $tab_menu_top[3][$key2]; foreach($tab_next_level_3 AS $key3 => $val3) { } } } } } } }
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 ?