Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Dynamiczne tworzenie tablic.
Forum PHP.pl > Forum > Przedszkole
seismic
Witam. Zamierzam budowac dynamicznie galerię na stronie.
...Wczytalem już nazwy katalogow do tablicy $gals, i teraz chcę z tych wartości nazw w tej tablicy, utworzyć nowe tablice aby potem zaladowac do nich nazwy obrazków.

  1. <?php
  2. $ile="0";
  3. $katalog = "smarty/gal/";
  4. $dir = OPENDIR($katalog);
  5. WHILE(($katalog=READDIR($dir))!=FALSE){
  6. IF(($katalog != ".") && ($katalog != "..")){
  7. $gals[$ile]=$katalog;
  8. $ile++;
  9. }
  10. }
  11. asort($gals);
  12. //Tutaj mam już załadowane nazwy katalogów.
  13. //I teraz jak z wartości $gals utworzyć nowe tablice?
  14.  
  15. //Próbowałem użyć variable variables na stworzenie samych zmiennych narazie, ale c
    oś nie dziala.
  16. FOR ($i=0; $i<=$ile; $i++){
  17. ${$gals}[$i] = 'wartosc_'.$i;
  18. }
  19. ?>

Bardzo proszę o pomoc. Ewentualnie akieś nakierowanie.
Pozdrawiam.
nospor
  1. <?php
  2. $ile=0;
  3. $katalog = 'smarty/gal/';
  4. $dir = OPENDIR($katalog);
  5. WHILE(($katalog=READDIR($dir))!=FALSE){
  6. IF(($katalog != '.') && ($katalog != '..')){
  7. $gals[$ile]=$katalog;
  8. $ile++;
  9. }
  10. }
  11. asort($gals);
  12.  
  13. FOR ($i=0; $i<$ile; $i++){
  14. ${$gals[$i]} = 'wartosc_'.$i;
  15. }
  16. ?>



proszę poprawić tytuł o znacznik zgodnie z zasadami forum Przedszkole:
Temat: Tematyka i zasady panujace na forum Przedszkole
seismic
Proszę nawet o jakiegoś linka do materiałów gdzie można znaleźć cokolwiek o dynamicznym tworzeniu tablic w pehapie. Już sporo się naszukałem w manualu i google, no i nieznalazłem nic na ten temat.
Ogólnie staram się stworzyć galerię którą będę uaktualniał jedynie poprzez wrzucenie folderu o nazwie galerii i zawartością obrazków.
Proszę też o rade, słowa kluczowe itp.
nospor
Przeciez dostales odemnie odpowiedz:
  1. <?php
  2. FOR ($i=0; $i<$ile; $i++){
  3. ${$gals[$i]} = 'wartosc_'.$i;
  4. }
  5. ?>


Nie oto chodzilo?

Link? Prosze bardzo: http://pl.php.net/manual/pl/language.variables.variable.php
seismic
  1. <?php
  2. FOR ($i=0; $i<$ile; $i++){
  3. ${$gals[$i]} = 'wartosc_'.$i;
  4. }
  5. ?>

Zakładając że w $dir są pewne katalogi...
to czyli teraz, jesli zamieszczę na koncie, katalog o przykładowej nazwie np folder
to taka składnia:
  1. <?php
  2. ECHO $folder;
  3. ?>

powinna zwrócić już jakąś wartość ?
Bo niestety tak się niedzieje.
Nie ma błędu, poprostu nic się nie wyświetla.
Tak jakby nie stworzył zmiennej. sadsmiley02.gifsadsmiley02.gifsadsmiley02.gif
nospor
Cytat
powinna zwrócić już jakąś wartość ?
Bo niestety tak się niedzieje..

No popatrz, a mi dziala smile.gif

Byc moze nie znalazl ci zadnego pliku/katalogu. daj sobie:
print_r($gals);
i sprawdz czy wogole cos tam masz.
seismic
  1. <?php
  2. print_r($gals);
  3. ?>

Array ( [10] => 20000606_Pobyt_w_Bieszczadach_z_Braćmi [5] => 20010118_Osiemnastka_Adama [0] => 20020201_Kilka_Różnych_Zdjęc [6] => 20020802_Przystanek_Woodstock [7] => 20030131_Impreza_w_Klubie_Wiking [8] => 20030228_Druga_Impreza_w_Klubie_Wiking [2] => 20030607_Impreza_z_Beczkš_na_Białowoli [4] => 20030709_Osiemnastka_Serka [9] => 20031119_Osiemnastka_Rudego [3] => 20040101_Impreza_Sylwestrowa [1] => folder )

  1. <?php
  2. FOR ($i=0; $i<$ile; $i++){ 
  3. ECHO $gals[$i].'<BR>';
  4. }
  5. ?>

20020201_Kilka_Różnych_Zdjęc
folder
20030607_Impreza_z_Beczkš_na_Białowoli
20040101_Impreza_Sylwestrowa
20030709_Osiemnastka_Serka
20010118_Osiemnastka_Adama
20020802_Przystanek_Woodstock
20030131_Impreza_w_Klubie_Wiking
20030228_Druga_Impreza_w_Klubie_Wiking
20031119_Osiemnastka_Rudego
20000606_Pobyt_w_Bieszczadach_z_Braćmi


  1. <?php
  2. ECHO $folder;
  3. ?>

No tutaj pusto niestety.

Hmm, nospor na pewno to tak ma być? :-(
nospor
jak sam widzisz nie wczytal ci zadnego katalogu o nazwie folder wiec sie nie dziw ze ci nie tworzy takiej zmiennej smile.gif
seismic
No jak nie wczytałquestionmark.gif? Nie rozumiem Ciebie.

Array ( [10] => 20000606_Pobyt_w_Bieszczadach_z_Braćmi [5] => 20010118_Osiemnastka_Adama [0] => 20020201_Kilka_Różnych_Zdjęc [6] => 20020802_Przystanek_Woodstock [7] => 20030131_Impreza_w_Klubie_Wiking [8] => 20030228_Druga_Impreza_w_Klubie_Wiking [2] => 20030607_Impreza_z_Beczkš_na_Białowoli [4] => 20030709_Osiemnastka_Serka [9] => 20031119_Osiemnastka_Rudego [3] => 20040101_Impreza_Sylwestrowa [1] => folder )

...

20020201_Kilka_Różnych_Zdjęc
folder
20030607_Impreza_z_Beczkš_na_Białowoli
20040101_Impreza_Sylwestrowa
20030709_Osiemnastka_Serka
20010118_Osiemnastka_Adama
20020802_Przystanek_Woodstock
20030131_Impreza_w_Klubie_Wiking
20030228_Druga_Impreza_w_Klubie_Wiking
20031119_Osiemnastka_Rudego
20000606_Pobyt_w_Bieszczadach_z_Braćmi

Teraz to już pewnie o dwóch róznych rzeczach myślimy, bo widać dobrze że istnieje taka nazwa w tablicy(questionmark.gif)
blinksmiley.gif sadsmiley02.gif
nospor
sorki, w takiej formie to pokazales ze przeoczylem. zacznij uzywac sensowne bbcode quote lub code gdy cos pokazujesz.

No nie wiem. mi dziala wysmienicie. a te echo $folder rozumiem ze na samym koncu dajesz?
seismic
Już okej jest.
Kurde nie poprawilem. Bo teraz ja nie zauważyłem róznicy pomiędzy
  1. <?php
  2. ${$gals[$i]}
  3. ${$gals}[$i]
  4. ?>


smile.gif rolleyes.gif


Czy polskie znaki w tych stringach mogą być bezpiecznie przechowywane w tablicy i ewentualnie poddawane modyfikacji np wycinaniu czy wklejaniu ?
nospor
masz na mysli indexy czy wartosci? A pozatym sobie sprawdz tongue.gif

ps: zmienilem ci sygnature bo byla ciut nieregulaminowa
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.