Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Element pętli w nazwie zmiennej
elipsa
post
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 12.09.2005

Ostrzeżenie: (0%)
-----


Witam,

mam pewien nietypowy problem, nie bardzo wiem, jak to wyrazić, dlatego spróbuję opisać. Powiedzmy, że mamy pętlę, która wykonuje się 10 razy. Za każdą pętlą chciałbym utworzyć nową zmienną z numerem tej pętli. Jedyne, co mi przychodzi do głowy, to to:

  1. for($i=1; $i<=10; $i++) {
  2. if($i==1) {$zmienna1="cos_tam";}
  3. if($i==2) {$zmienna2="cos_tam";}
  4. if($i==3) {$zmienna3="cos_tam";}
  5. if($i==4) {$zmienna4="cos_tam";}
  6. if($i==5) {$zmienna5="cos_tam";}
  7. if($i==6) {$zmienna6="cos_tam";}
  8. if($i==7) {$zmienna7="cos_tam";}
  9. if($i==8) {$zmienna8="cos_tam";}
  10. if($i==9) {$zmienna9="cos_tam";}
  11. if($i==10) {$zmienna10="cos_tam";}
  12. }


Niestety, to bardzo dużo kodu (np. jeżeli takich pętli będzie 200). Chciałbym to jakoś krócej zapisać, np. coś w tym stylu:

  1. for($i=1; $i<=10; $i++) {$zmienna.$i="cos_tam";}


Niestety, to nie działa :-( Chodzi o to, żeby przy każdej pętli tworzona była zmienna, której nazwa składała by się z jakiegoś słowa i numeru wykonania tej pętli.

Czy jest jakaś możliwość?
Go to the top of the page
+Quote Post
Wicepsik
post
Post #2





Grupa: Zarejestrowani
Postów: 1 575
Pomógł: 299
Dołączył: 26.03.2009

Ostrzeżenie: (20%)
X----


array
Go to the top of the page
+Quote Post
tehaha
post
Post #3





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


  1. $variables = array();
  2. for($i=1; $i<=10; $i++)
  3. {
  4. $variables["zmienna_".$i] = "cos_tam";
  5. }
  6. print_r($variables);
  7. echo $variables['zmienna_2'];
Go to the top of the page
+Quote Post
Daniel Meger
post
Post #4





Grupa: Zarejestrowani
Postów: 20
Pomógł: 2
Dołączył: 30.04.2010
Skąd: PL

Ostrzeżenie: (0%)
-----


  1. for($i = 0; $i < 100; $i++) {
  2. $var_name = 'zmienna'.$i;
  3. $$var_name = $i; // albo cokolwiek innego przypisujesz
  4. }

Z tym, że chyba znacznie lepiej jest używać tablic w takich przypadkach.
Go to the top of the page
+Quote Post
nemis
post
Post #5





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 18.07.2007

Ostrzeżenie: (0%)
-----


Jest taka mozliwosc. Mozesz odwolywac sie do zmiennych o nazwie zawartej w zmiennej.

np.
  1. $nazwa_zmiennej = 'zmienna'.$i;
  2. $$nazwa_zmiennej = WARTOSC;
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 17.09.2025 - 17:03