Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Twig wykorzystanie pętli?
Forum PHP.pl > Forum > Przedszkole
Fred1485
Witam,

Chcę za pomocą szablonów Twiga (podstawy znam) sobie wypisać na ekran tekst, nie wiem jak to najlepiej wytłumaczyć o co mi chodzi, ale przykładowo, mam podzielone linki na kategorie: aktywny, nieaktywny, inne
Docelowo muszę to zrobić za pomocą tablicy (chyba innego sposobu Twig nie uzna).

Link aktywny przechowuje url i value,
Link nieaktywny samo value,
Link inny url i value,

  1.  
  2. $active = array('url' -> 'jakis_url', 'value' => 'tekst');
  3. $inactive = array('value' => 'tekst');
  4. $other = array('url' -> 'jakis_url', 'value' => 'tekst');
  5.  
  6. // I teraz samo sedno sprawy bo w każdym rodzaju może się znajdować dowolna ilość linków.
  7. //Wszystko dodając do siebie
  8.  
  9. $output = array('active' => array($active1,$active2,$active_n), 'inactive' => array($inactive1,$inactive2,$inactive_n), 'other' => array($other1,$other2,$other_n),


Jak widać stworzyła się tablica 3-wymiarowa i teraz to wszystko trzeba wyrenderować (w szablonie raczej musi być pętla bo jak inaczej wszystkie rodzaje linków po kolei wyrednerować)

Jeśli jest ktoś kto dotarł do tego momentu i wie o co mi chodzi to jak trzeba to rozwiązać, może lepiej da się to zrobić sad.gif

P.S Jest to schemat prostego navigatora więc tych linków tyle trzeba wyświetlać
P.S Ja uważam że to co ma iśc na ekran powinno być w jednej tablice (tak??)

Pozdrawiam
rad11
A nie mozesz poprostu z tych cudactw zrobic jednej tablicy i pojsc petla w szablonie?
Fred1485
No właśnie mogę i chcę tylko brak mi wiedzy jak to zrobić, podstawową zasadę pętli znam ale nie wiem jak strukturę w tablicy najlepiej zrobić i jak się do tego odwołać sad.gif
rad11
Do tablicy o takiej strukturze o ktorej mowisz lecisz w ten sposob:

  1. foreach($output as $k => $v){
  2.  
  3. foreach($v as $kk => $vv){
  4.  
  5.  
  6. foreach($vv as $kkk => $vvv){
  7.  
  8. var_dump($vvv);
  9.  
  10. }
  11.  
  12. }
  13.  
  14. }
Fred1485
Ale zaraz, zaraz co ty teraz chcesz wytłumaczyć.
Mi chodzi o bardziej merytorykę, czy taka tablica 3-wymiarowa w przypadku korzystania z Twiga jest słuszna, czy lepiej to zrobić inaczej, jak taką tablicę stworzyć to wiem z odwołaniem w szablonie już sobie poradziłem (chyba).

EDIT...


Który sposób będzie lepszy (a może to bez różnicy w wydajności, spójności etc)

  1. $output = [
  2. 'active'=>[
  3. 'url1'=>'wartosc1',
  4. 'url2'=>'wartosc2',
  5. 'url3'=>'wartosc3',
  6. ],
  7. 'inactive'=>[
  8. 'url1'=>'wartosc1',
  9. 'url2'=>'wartosc2',
  10. 'url3'=>'wartosc3',
  11. ]
  12. ];
  13.  
  14. $output = [
  15. 'active'=>[
  16. ['url' => 'jakis_url', 'wartosc' => 'jakas_wartosc'],
  17. ['url2' => 'jakis_url2', 'wartosc2' => 'jakas_wartosc2']
  18. ],
  19. 'inactive'=>[
  20. ['url' => 'jakis_url', 'wartosc' => 'jakas_wartosc'],
  21. ['url2' => 'jakis_url2', 'wartosc2' => 'jakas_wartosc2']
  22. ]
  23. ];


Przy zaznaczeniu że url będzie unikalny zawsze, czy ma to jakieś znaczenie, który sposób lepiej wybrać?
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.