Здравствуйте. Подскажите, как должен выглядеть класс, что бы работала такая конструкция Код (Text): $obj = new ClassName; $obj->getMethod()->someElse; обратите внимание на $obj->getMethod()->someElse; после метода идет обращение к свойству. покажите как должен выглядеть класс при таком раскладе. и вообще, не понимаю зачем это. вообщем, буду рад ссылкам и толкованием, спасибо )
если я правильно помню то метод getMethod должен возвращать объект класса т.е. Код (Text): function getMethod { return $this; } а в классе есть открытое свойство someElse кстати, не обязательно он должен возвращать объект своего класса, может быть и какого то другого, у которого есть свойство someElse вот короче: Код (PHP): class a { public $val = 'hello'; } class b { public function my_method() { $obj = new a(); return $obj; } } $bbb = new b(); echo $bbb->my_method()->val;
Именно так. Я бы вообще убрал первую половину поста, она только запутает автора. Второй половины достаточно, все правильно расписал.
Код (Text): <?php class AnotherClass { public $someElse; } class ClassName { /** @var AnotherClass */ private $anotherClassVar; public function __construct() { $this->anotherClassVar = new AnotherClass(); } public function getMethod() { return $this->anotherClassVar; } } $obj = new ClassName; $obj->getMethod()->someElse;