Выбор ответа Middle ООП, трейты и интерфейсы обновлено

Магические методы

Вопрос

Когда вызывается __get($name)?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: При чтении недоступного свойства: несуществующего или закрытого снаружи. get срабатывает только для недоступных свойств.

Варианты ответа

  1. При чтении недоступного свойства: несуществующего или закрытого снаружиправильный ответ
  2. При каждом чтении любого свойства объекта, включая публичные поля
  3. При вызове несуществующего метода объекта с именем $name
  4. При приведении объекта к строке, например в echo $obj

Разбор

__get срабатывает только для недоступных свойств. Существующие публичные свойства читаются напрямую. Несуществующие методы обрабатывает __call (и __callStatic), приведение к строке __toString. На магических методах построены «волшебные» атрибуты моделей Eloquent.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.