Я новичок в php, поэтому вопрос - это свалка. Взгляните на следующий кодинициализация поля класса с объектом
class A {
private $obj;
public function A() {
$this->obj = new Obj();
//$this->obj->fff() works here;
//still var_dump($this->obj) prints NULL here
}
public f() {
//$this->obj is NULL here!!!
//$this->obj->ff() throws an error
}
}
UPD в f()
я Fatal error: Call to a member function ff() on a non-object in ...
как я должен инициализировать $obj
, чтобы увидеть его в f()
?
Благодарим вас заранее!
Это зависит от того, что находится внутри f(). иногда инициализация с помощью простого нового оператора для построения объекта может завершиться неудачей, например, при клонировании. –