Курсы по Laravel
Менторство: 200$ за курс. Репетиторство: 20$ за занятие. Жми для подробностей!
⊗ppOpStExm 51 of 107 menu
Вступайте в телеграмм-канал сайта code.mu: новинки, статьи, интервью, задачи, бесплатные курсы и тренинги. Жми для вступления:)

Пример на static в ООП в PHP

Пусть у нас есть вот такой класс User:

<?php class User { public $name; public function __construct($name) { $this->name = $name; } } ?>

Давайте сделаем так, чтобы этот класс подсчитывал количество своих объектов. Для этого сделаем статическое свойство count. Изначально запишем в него значение 0, а при создании каждого нового объекта будем увеличивать это значение на 1.

Будем увеличивать значение нашего счетчика в конструкторе объекта:

<?php class User { public static $count = 0; // счетчик объектов public $name; public function __construct($name) { $this->name = $name; // Увеличиваем счетчик при создании объекта: self::$count++; } } ?>

Проверим, что все работает:

<?php $user1 = new User('user1'); echo User::$count; // выведет 1 $user2 = new User('user2'); echo User::$count; // выведет 2 ?>

Сделайте наш счетчик приватным. Пусть его значение можно будет получать с помощью специального метода.

azbydeenesfrkakkptruuz