爲什麼這不起作用?php中的數組類
class Test{
private $vars = array('ALL' => 0,
'ONE' => 1);
private $var = $vars['ALL']; // this does not work
function __construct(){
$this->var = $vars['ALL']; // this does work
}
}
代碼在這裏例如:http://codepad.org/QSjHMDij
,因爲你不能在類之前的構造函數初始化期間訪問$this
爲什麼數組沒有在聲明中
private $var = $vars['ALL']; // this does not work
但我沒有在第8行上使用$(這是鍵盤示例btw中的第8行,這裏是第6行) – superbly 2011-05-05 11:08:27
您不必:暗示。如果您無法訪問'$ this',則無法訪問任何成員變量。編輯:實際上,它甚至可能不是隱含的:我忘記它是真的,但PHP可能不具有與C++和C#相同的作用域分辨率。 PHP通常會執行異常的範圍解析以避免含糊不清,所以我仍然不會感到驚訝。 – 2011-05-05 11:09:48
好的。我能否假定變量只在對象初始化時被初始化? – superbly 2011-05-05 11:13:06