2017-09-12 1 views
0

내가 코드의 라인을 가지고 :PHP : 클래스의 속성으로 객체의 인스턴스는

class foo{ 
    public $object = new bar(2); 

    public function index(){ 
     dd($this->object); 
    } 
} 

bar 개체가 포함되어 지금

class bar{ 
    protected $number; 

    function __construct($number){ 
     $this->number = $number; 
    } 
} 

는 나에게 던지는 Constant expression contains invalid operation

+0

워드 프로세서의 첫 번째 예를 들어 당신이 가치와 표현 클래스 속성을 인스턴스화에 유효한 보여줍니다 그 대신 객체 생성자에서 수행해야합니다 .properties.php. 불행히도 할 수있는 일과 할 수없는 일이 특별히 직관적이지는 않습니다. – iainn

답변

8

현재 클래스 속성 선언 중에 객체를 인스턴스화 할 수 없습니다. - http://php.net/manual/en/language.oop5

class foo{ 
    public $object; 

    public function __construct() { 
     $this->object = new bar(2); 
    } 

    public function index(){ 
     dd($this->object); 
    } 
} 
+0

그것은 효과가있었습니다! 대단히 감사합니다! –

관련 문제