Mfano wa static katika OOP kwenye PHP

Wacha tuwe na darasa User kama hii:

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

Wacha tufanye ili darasa hili liweze kuhesabu idadi ya vitu vyake. Kwa hili tutafanya sifa tuli count. Hapo mwanzo tutaandika ndani yake thamani 0, na wakati wa kuunda kila kitu kipya tutaongeza thamani hii kwa 1.

Tutaongeza thamani ya kihesabu chetu katika mkabidhi wa kitu:

User.php<?php
  class User
  {
    public static $count = 0; // kihesabu cha vitu
    public $name;
    
    public function __construct($name)
    {
      $this->name = $name;
      
      // Tunaongeza kihesabu wakati wa kuunda kitu:
      self::$count++;
    }
  }
?>

Tuangalie ikiwa kila kitu kinafanya kazi:

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

Fanya kihesabu chetu kuwa cha faragha. Wacha thamani yake iweze kupatikana kwa kutumia mbinu maalum.