クラスで保護された変数を取得しましたFather
。この変数の内容はクラスで変更されますが、Father
この変数をサブクラスで使用する必要があります。
class Father {
protected $body;
function __construct(){
$this->body = 'test';
}
}
class Child extends Father{
function __construct(){
echo $this->body;
}
}
$c = new Father();
$d = new Child();
変数body
が空になるのはなぜですか? 静的として宣言すると機能しますが、サブクラスでこれらにアクセスして変更したい場合は、すべての変数を静的として宣言する必要がありますか?