Autor | Zpráva | ||
---|---|---|---|
dsa Profil * |
#1 · Zasláno: 20. 11. 2012, 11:26:50
Prečo mi to nefunguje?
<?php class trieda { protected $a=array(); function __construct() { $this->$a[0]=1; } } $obj= new trieda(); |
||
DJ Miky Profil |
#2 · Zasláno: 20. 11. 2012, 11:44:01
Za
-> už dolar nebude:
$this->a[0] = 1; |
||
Majkl578 Profil |
dsa:
„Prečo mi to nefunguje?“ Protože proměnná $a není definována a k vlastnosti beze jména přistoupit nelze. DJ Miky: „Za -> už dolar nebude:“ Ale kdeže, může být. Stačí, aby proměnná $a byla definována ve scope dané metody a fungovalo by to: function __construct() { $a = 'b'; $this->$a[0]=1; var_dump($this->b); // int(1) } Nicméně v daném kontextu tam dolar není zamýšlený. |
||
Časová prodleva: 13 let
|
0