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没有它分配给它的子类中的价值,为什么呢?
谢谢!