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

Основные магические методы

Вопрос

Какие магические методы чаще всего встречаются?

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

Ответьте про себя или вслух, потом откройте ответ и сверьтесь.

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

Коротко

- construct, destruct. - get, set, isset, unset: недоступные свойства. - call, callStatic: недоступные методы. - toString: приведение к строке (автоматически реализует Stringable). - invoke: объект как функция. - clone: донастройка копии. - serialize, unserialize: сериализация.

Ответ

  • __construct, __destruct.
  • __get, __set, __isset, __unset: недоступные свойства.
  • __call, __callStatic: недоступные методы.
  • __toString: приведение к строке (автоматически реализует Stringable).
  • __invoke: объект как функция.
  • __clone: донастройка копии.
  • __serialize, __unserialize: сериализация.

Разбор

Магия мешает статическому анализу. Фреймворки компенсируют это аннотациями @property и плагинами для PHPStan.

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

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