Применение методов к объекту, возвращенному другим методом

Задача
Необходимо вызвать метод для объекта, возвращенного другим методом.

Решение
Присвойте объект временной переменной, а затем вызовите метод для этой временной переменной:

$orange = $fruit->get('citrus');
$orange->peel();

Обсуждение
Это необходимо, поскольку следующее выражение приведет к синтаксической ошибке:

$fruit->get('citrus')->peel();

Zend Engine 2 поддерживает непосредственную разадресацию объектов, возвращенных методом, поэтому в таком обходном маневре больше нет необходимости.

Оцените статью: (0 голосов)
0 5 0

Статьи из раздела PHP на эту тему:
Динамическая реализация объекта
Динамическое создание класса
Добавление свойств в базовый объект
Доступ к переопределенным методам
Клонирование объектов

Вернуться в раздел: PHP / 7. Классы и объекты