0
考慮到這些類時VS:PHP:申報對象屬性的初始化時實例
class Test_A {
protected $value;
public function __construct() {
$this->value = null;
}
}
class Test_B {
protected $value = null;
public function __construct() {
}
}
我想知道哪一個被認爲是用於初始化對象的屬性,爲什麼最好的做法。
兩者在語法上都是正確的,根據PHP手冊,只有當值不依賴於任何計算(protected $ a = a + b;)時才聲明屬性。如果它依賴於某些計算或運行時值,則應該在類構造函數中進行初始化。
編號:http://www.php.net/manual/en/language.oop5.properties.php(見例#1)
牢記這一點,它是一個很好的做法,宣佈時,除非他們真正需要計算總是初始化屬性?
該段的最後一行沒有回答你的問題? –
不,我仍然不知道是否有任何缺點,我沒有考慮。如果沒關係,我也想知道。 –