В чём разница между self и «ClassName»? class A {
public static $var = 1;
public function hello() {
echo self::$var;
echo A::$var;
}
}
Чем отличаться тут будут self::$var и A::$var ?

21 Авг 2019 в 07:02
159 +1
0
Ответы
1

self::$var обращается к статической переменной $var внутри текущего класса A. Таким образом, если в будущем имя класса поменяется, не нужно будет изменять код, использующий self::$var.

A::$var обращается к статической переменной $var в классе A напрямую. Это означает, что если имя класса изменится, то нужно будет вручную изменить все упоминания A::$var на новое имя класса.

Следовательно, использование self::$var более гибкое и безопасное, так как не требует изменения кода в случае изменения имени класса.

20 Апр в 13:09
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 84 776 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир