1

クラスで保護された変数を取得しました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が空になるのはなぜですか? 静的として宣言すると機能しますが、サブクラスでこれらにアクセスして変更したい場合は、すべての変数を静的として宣言する必要がありますか?

4

2 に答える 2