やったこと

webサービスを作るときに考えたことを垂れ流します

PHPでクラス内のメンバ変数にオブジェクトを指定する場合

PHPで以下のようにクラス内のメンバ変数にオブジェクトをセットするとエラーがでてしまう。

class Test1
{
  public $hoge = new Test2(); 
}


エラー文:「PHP Parse error: syntax error, unexpected 'new' (T_NEW)・・・」

メンバ変数にオブジェクトをセットしたい場合は、以下のように__construct内で行うとよい。

class Test1
{
  public $hoge;
 
  public function __construct()
  {
    $this->hoge= new Test2(); 
  }
}

なんでこうしないといけないんだろうね、めんどいね・・。