PHP da OOP da static dan foydalanishga misol

Faraz qilaylik, bizda User nomli shunday klass mavjud:

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

Keling, bu klass o'zining obyektlari sonini hisoblasin. Buning uchun statik count xususiyatini yaratamiz. Boshlang'ich qiymat sifatida 0 yozamiz, va har bir yangi obyekt yaratilganda bu qiymatni 1 ga oshiramiz.

Obyekt konstruktorida hisoblagich qiymatini oshirib boramiz:

User.php<?php
  class User
  {
    public static $count = 0; // obyektlar hisoblagichi
    public $name;
    
    public function __construct($name)
    {
      $this->name = $name;
      
      // Obyekt yaratilganda hisoblagichni oshiramiz:
      self::$count++;
    }
  }
?>

Hammasi ishlashini tekshiramiz:

index.php<?php
  $user1 = new User('user1');
  echo User::$count; // 1 chiqadi
  
  $user2 = new User('user2');
  echo User::$count; // 2 chiqadi
?>
Задание 1

Bizning hisoblagichimizni privat qiling. Uning qiymati maxsus metod orqali olingichi mumkin bo'lsin.