Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про PHP: magic methods, construct, set, get, call

Как можно использовать магические методы в PHP?

Этот вопрос проверяет знание магических методов PHP, которые автоматически вызываются при определенных событиях и позволяют изменять стандартное поведение объектов.

Короткий ответ

Магические методы в PHP — это методы с особыми именами, которые автоматически вызываются при определенных действиях с объектами, например, при создании объекта, доступе к недоступным свойствам или вызове несуществующих методов. Примеры включают __construct(), __get(), __set(), __call(), и другие.

Длинный ответ

Магические методы в PHP — это методы, имена которых начинаются с двух подчеркиваний (например, __construct(), __get() и т. д.). Эти методы автоматически вызываются при определенных действиях с объектами, позволяя изменить их стандартное поведение.

Примеры магических методов:

  • __construct(): Вызывается при создании нового объекта.

  • __get() и __set(): Вызываются при доступе к недоступным (не существующим или защищенным) свойствам.

  • __call(): Вызывается при попытке вызова несуществующего метода.

  • __toString(): Вызывается при преобразовании объекта в строку.

Пример использования магических методов:

class Person {
    	private $name;

    	public function __construct($name) {
        	$this->name = $name;
    	}

    	public function __get($property) {
        	if ($property == 'name') {
            		return $this->name;
        	}
    	}

    	public function __set($property, $value) {
        	if ($property == 'name') {
            		$this->name = $value;
        	}
    	}

    	public function __toString() {
        	return "Hello, my name is {$this->name}.";
    	}
}

$person = new Person('Alice');
echo $person;  // Выведет: Hello, my name is Alice.

Магические методы позволяют добавить дополнительные возможности объектам, такие как кастомизация создания объектов, обработка отсутствующих методов и свойств, и обеспечение динамического поведения объектов.

  • Аватар

    PHP Guru

    Mikhail Savin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    3

  • Сложность:

    7

Навыки

  • PHP

    PHP

Ключевые слова

#magic methods

#construct

#set

#get

#call

Подпишись на PHP Developer в телеграм

  • Аватар

    PHP Guru

    Mikhail Savin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.