Autor | Zpráva | ||
---|---|---|---|
PetrM Profil * |
#1 · Zasláno: 7. 7. 2010, 13:55:25
Dobrý den.
Potřeboval bych aby jedna třída resp. její metoda mohla upravovat proměnné jiné metody ze které je volána. Zkoušel jsem následující kód, ale nefunguje podle přestav. btw: proměnnou nechci předávat jako parametr. Děkuji za rady. class Ha { public static function doIt() { global $ta; var_dump($ta); } } class B { public function crazy() { $ta = array(1,2,3,4,5); Ha::doIt(); } } $b = new B; $b->crazy(); |
||
Majkl578 Profil |
#2 · Zasláno: 7. 7. 2010, 14:29:02
Jedině argumentem a pomocí reference (&).
|
||
PetrM Profil * |
#3 · Zasláno: 7. 7. 2010, 14:45:37
Asi to jinak nepůjde.
Díky. |
||
Joker Profil |
#4 · Zasláno: 7. 7. 2010, 16:39:32
PetrM:
V tom kódu výše je nejspíš problém v tom, že proměnná $ta je globální jenom v metodě doIt a ne v metodě crazy. Nicméně ty parametry jsou mimo jiné právě od toho, aby bylo vidět, s jakými daty daný kus kódu pracuje a odstranily se situace, kdy není jasné, kde všude v kódu se vlastně s danou proměnnou pracuje. |
||
Časová prodleva: 14 let
|
0