Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Drzewko kategorii z array do HTML
Forum PHP.pl > Forum > PHP
jestemacid
Witam,
Mam następujący problem. Nie bede opisywal funkcjonowania samego skryptu, wydaje mi sie ze praktyczny przyklad zobrazuje wiecej niz opis. smile.gif Próbuję przekonwertować wygenerowane drzewko kategorii (nielimitowana głębokość) array w postaci:
  1. [1] => Array
  2. (
  3. [module_langname] => ACP_DASHBOARD
  4. [child] => Array
  5. (
  6. )
  7. )
  8.  
  9. [2] => Array
  10. (
  11. [module_langname] => ACP_PAGE
  12. [child] => Array
  13. (
  14. [3] => Array
  15. (
  16. [module_langname] => ACP_MANAGE
  17. [child] => Array
  18. (
  19. )
  20.  
  21. )
  22.  
  23. itd.

na kod HTML w postaci.:
  1. <li>
  2. <a href="#">ACP_DASHBOARD</a>
  3. </li>
  4. <li>
  5. <a href="#">ACP_PAGE</a>
  6. <ul>
  7. <li><a href="#">ACP_MANAGE</a></li>
  8. </ul>
  9. </li>

Nie za bardzo wiem jak się do tego zabrać w kwestii samego zaprogramowania algorytmu. Jakies pomysly?
wookieb
A o rekurencji słyszał? Warto się z tym zapoznać.
thek
Wookieb podpowiada dobrze. Funkcja ta działa na zasadzie:
- Sprawdź czy element jest niepustą tablicą,
- Jeśli nie - obrzuć to znacznikami A,
- Jeśli tak - otwórz UL i wywołaj dla każdego niepustego elementu ją rekurencyjnie, obkładając element w LI.

W ten sposób jeśli do funkcji wrzucisz zwykły string to zrobi z niego zwykły link. Jeśli pustą tablicę, to zwróci pustkę. Gdy wypełnioną prostą tablicę - zrobi listę. A jeśli jest to jakieś kombinowanie z zagnieżdżonymi tablicami - ułoży odpowiednią strukturę smile.gif
jestemacid
Dzięki wielkie, poradziłem sobie. smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.