2016-04-02 18 views
0

私は次のような何かをしたい:コンストラクタなしでクラスのオブジェクトにメンバ変数を割り当てる方法はありますか?

class SomeOtherClass {} 

class Test 
{ 
     public $member = new SomeOtherClass(); 
} 

唯一の問題は「試験」クラスが別のクラスを拡張する必要がありますし、コンストラクタをオーバーライドするべきではありませんので、私は、コンストラクタを使用したくないということです。 これは実際にはPHPで可能ですか?

+0

ありません、それは不可能です。メンバー変数には定数式しか指定できません。 –

答えて

3

あなたはこのようなTest親のコンストラクタを拡張することができます。

class Test extends SomeClass 
{ 
    public $member; 

    function __construct() { 
     $this->member = new SomeOtherClass(); 
     parent::__construct(); 
    } 
} 
+0

子クラスの親コンストラクタを強制的に呼び出すことはできますか? – Tom291

+0

@ Tom291、「親コンストラクタを強制的に呼び出す」とはどういう意味ですか?あなたは 'parent :: __ construct();'を使わずに、各子クラスの親コンストラクタを自動的に呼び出そうとしますか? – RomanPerekhrest

関連する問題