создать новый объект в php

Я понимаю, что PHP не позволяет мне создать новый экземпляр класса ClassB внутри моего класса, если создание не входит в область функции. Или я просто не понимаю …

class ClassA { const ASD = 0; protected $_asd = array(); //and so on protected $_myVar = new ClassB(); // here I get *syntax error, unexpected 'new'* underlining 'new' // functions and so on } 

Мне нужен какой-то конструктор, или есть способ фактически создать экземпляр объекта по-своему, как я желаю, поскольку я привык делать на Java или C #. Или использует Singleton единственное самое близкое решение для моего подхода?

PS ClassB находится в том же пакете и папке, что и ClassA.

Согласно документам PHP :

объявление может включать инициализацию, но эта инициализация должна быть постоянным значением, то есть она должна быть способна быть оценена во время компиляции и не должна зависеть от информации о времени выполнения для оценки.

Таким образом, вам нужно будет создать экземпляр $_myVar в вашем конструкторе :

 protected $_myVar; public function __contruct() { $this->_myVar = new ClassB(); } 

Да, есть конструктор (см. Ниже)

 class ClassA { const ASD = 0; protected $_asd = array(); //and so on protected $_myVar; // initialization not allowed directly here public function __contruct() { $this->_myVar = new ClassB(); } }