Магические методы в PHP — это специальные методы, названия которых начинаются с двойного подчеркивания (__
). Они вызываются автоматически в определенных ситуациях или в ответ на определенные действия с объектом.
Наиболее распространенные магические методы:
__construct()
: Вызывается при создании нового объекта. Используется для инициализации свойств объекта.__destruct()
: Вызывается при уничтожении или сборке мусора объекта. Используется для выполнения очистки или освобождения ресурсов.__call($name, $arguments)
: Вызывается при попытке вызвать недоступный (невидимый или несуществующий) метод объекта.__callStatic($name, $arguments)
: Вызывается при попытке вызвать недоступный статический метод класса.__get($name)
: Вызывается при попытке чтения недоступного (невидимого или несуществующего) свойства объекта.__set($name, $value)
: Вызывается при попытке записи в недоступное (невидимое или несуществующее) свойство объекта.__isset($name)
: Вызывается при попытке проверить существование недоступного свойства с помощью isset()
или empty()
.__unset($name)
: Вызывается при попытке снять установку недоступного свойства с помощью unset()
.__sleep()
: Позволяет объекту подготовиться к сериализации. Должен возвращать массив имен свойств, которые будут сериализованы.__wakeup()
: Вызывается после десериализации объекта. Используется для восстановления ресурсов, которые могли быть потеряны во время сериМагические методы в PHP — это специальные методы, названия которых начинаются с двойного подчеркивания (__
). Они вызываются автоматически в определенных ситуациях или в ответ на определенные действия с объектом.
Наиболее распространенные магические методы:
__construct()
: Вызывается при создании нового объекта. Используется для инициализации свойств объекта.__destruct()
: Вызывается при уничтожении или сборке мусора объекта. Используется для выполнения очистки или освобождения ресурсов.__call($name, $arguments)
: Вызывается при попытке вызвать недоступный (невидимый или несуществующий) метод объекта.__callStatic($name, $arguments)
: Вызывается при попытке вызвать недоступный статический метод класса.__get($name)
: Вызывается при попытке чтения недоступного (невидимого или несуществующего) свойства объекта.__set($name, $value)
: Вызывается при попытке записи в недоступное (невидимое или несуществующее) свойство объекта.__isset($name)
: Вызывается при попытке проверить существование недоступного свойства с помощью isset()
или empty()
.__unset($name)
: Вызывается при попытке снять установку недоступного свойства с помощью unset()
.__sleep()
: Позволяет объекту подготовиться к сериализации. Должен возвращать массив имен свойств, которые будут сериализованы.__wakeup()
: Вызывается после десериализации объекта. Используется для восстановления ресурсов, которые могли быть потеряны во время сериRegister or sign in to get access to full answers for all questions from the question bank.