Задать вопрос
@Shimpanze

Невозможно присвоить статическому свойству значение?

Здравствуйте!

Не могу разобраться. Можно ли присвоить статическому свойству, значение 5 через __construct?

class foo {
    public static $bar = 0;
    
    public function __construct() {
        $this->bar = 5;
    }
}

var_dump( foo::$bar ); // должно быть 5
  • Вопрос задан
  • 87 просмотров
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
vesper-bot
@vesper-bot
Любитель файрволлов
Можно, но присваивать надо `foo::$bar` static::$bar иначе присвоите свойству инстанса, а не класса.
Да, если вы не успеете на момент вызова var_dump создать ни одного экземпляра класса foo, получите ноль, просто потому, что конструктор не будет ни разу выполнен.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы