for() a názvy promněných

9 příspěvků

Archiv diskusního fóra

Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.

  1. <? $cislo1 = 105546; $cislo2 = 98656; $cislo3 = 656444; $cislo4 = 65786797; ... for ($i=0;$i<5;$i++) echo $cislo$i; ?> Asi jste pochopili co by to mnělo být. Mám prostě mnoho promněných s názvem, který se liší jen v číslici. "echo $cislo$i" by mělo být ulehčení abych nemusel vypisovat: echo $cislo1; echo $cislo2; echo $cislo3; ... -jenže echo $cislo$i nefunguje jak by to tedy šlo udělat jinak. Moc děkuji.
  2. skus $cislo{$i}
  3. echo $cislo$i je jasne spatne. zkus echo "$cislo$i"; nebo echo $cislo.$i;
  4. Bohužel nic nefunguje. :-(
  5. ja bych napsal $nazev='cislo'.$i; echo $$nazev;
  6. Jinak na jeden řádek by to možna šlo zkrátit takto echo $('cislo'.$i);
  7. >> Mám prostě mnoho promněných s názvem, který se liší jen v číslici. v takovych pripadech se vetsinou pouziva pole...
  8. manual: Proměnné s proměnnými názvy Někdy je vhodné, aby se názvy proměnných mohly měnit, tj. aby mohly být dynamicky nastavovány a používány. Normální proměnná se nastavuje takovýmto konstruktem: $a = "ahoj"; Proměnná s proměnným názvem vezme hodnotu proměnné a použije ji jako název proměnné. Ve výše uvedeném příkladu, ahoj lze použít jako název proměnné uvedením dvou symbolů dolaru: $$a = "světe"; V této chvíli byly definovány dvě proměnné a byly uloženy do stromu symbolů PHP: $a s obsahem "ahoj" a $ahoj s obsahem "světe". Proto konstrukt: echo "$a ${$a}"; provede přesně totéž jako: echo "$a $ahoj"; tedy oba vyprodukují: ahoj světe. Při použití proměnných s proměnnými názvy s poli musíte vyřešit problém víceznačnosti. Tj. když napíšete $$a[1], parser potřebuje vědět, máte-li na mysli použití $a[1] jako proměnné nebo chcete $$a jako proměnnou a potom index [1] v této proměnné. Syntaxe pro řešení této víceznačnosti je ${$a[1]} pro první případ a ${$a}[1] pro druhý.
  9. Ajo, já jsem to nečetl pořádně. A co tak použít pole?

← Zpět na všechna témata