Выбор ответа Middle ООП, трейты и интерфейсы обновлено
Магические методы
Вопрос
Когда вызывается __get($name)?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: При чтении недоступного свойства: несуществующего или закрытого снаружи. get срабатывает только для недоступных свойств.
Варианты ответа
- При чтении недоступного свойства: несуществующего или закрытого снаружиправильный ответ
- При каждом чтении любого свойства объекта, включая публичные поля
- При вызове несуществующего метода объекта с именем
$name - При приведении объекта к строке, например в
echo $obj
Разбор
__get срабатывает только для недоступных свойств. Существующие публичные свойства читаются напрямую. Несуществующие методы обрабатывает __call (и __callStatic), приведение к строке __toString. На магических методах построены «волшебные» атрибуты моделей Eloquent.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Ещё по теме «ООП, трейты и интерфейсы»
- Абстрактный класс или интерфейс в PHP
- Поверхностное клонирование
- Продвижение свойств в конструкторе
- Класс с интерфейсом и наследованием
- final и видимость констант
- Диспетчер событий с приоритетами
- Склад с исключениями предметной области
- Фигуры через интерфейс и абстрактный класс