См. Код:
class Foo {
public static function dumpObj($obj) {
var_dump($obj);
}
}
class Bar {
public $someData = 'bla';
public function __construct() {
Foo::dumpObj($this);
}
}
new Bar;
Я предполагаю, что это выводит 'null', потому что $ this особенный, и мы просто не можем делать с ним такого рода вещи. Как вы можете видеть, я хочу вызвать метод Bar из класса Foo во время его создания, и мне нужен объект Bar для этого. Конечно, я могу изменить объект Bar в __construct, поэтому предположим, что объект был создан и что-то вне класса Bar тоже может его изменить.
Есть ли другой способ сделать это? К сожалению, Foo должен оставаться неподвижным и отделенным от Bar.
Большое спасибо за любые ответы.