class parents{
public $a;
function __construct(){
echo $this->a;
}
}
class child extends parents{
function __construct(){
$this->a = 1;
parent::__construct();
}
}
$new = new child();//print 1
此代碼上面打印1,這意味着當我們創建一個子類的實例,並且將值分配給從其父,在它的父類的屬性也繼承屬性一直assigned.But下面的代碼顯示了不同:屬性共享
class parents{
public $a;
function test(){
$child = new child();
echo $this->a;
}
}
class child extends parents{
function __construct(){
$this->a = 1;
}
}
$new = new parents();
$new->test();//print nothing
哪裏值分配給它的子類和父apprently沒有它分配給它的子類中的價值,爲什麼呢?
謝謝!