PHP में OOP में static का उदाहरण

मान लीजिए कि हमारे पास User नामक एक वर्ग है:

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

आइए इस वर्ग को इस तरह बनाएं कि यह अपनी वस्तुओं की संख्या गिन सके। इसके लिए एक स्थिर गुण count बनाते हैं। प्रारंभ में इसमें मान 0 लिखते हैं, और प्रत्येक नई वस्तु बनाते समय इस मान को 1 से बढ़ाएंगे।

वस्तु के कंस्ट्रक्टर में हमारे काउंटर के मान को बढ़ाएंगे:

User.php<?php
  class User
  {
    public static $count = 0; // वस्तु काउंटर
    public $name;
    
    public function __construct($name)
    {
      $this->name = $name;
      
      // वस्तु बनाते समय काउंटर बढ़ाएं:
      self::$count++;
    }
  }
?>

जांचते हैं कि सब कुछ काम करता है:

index.php<?php
  $user1 = new User('user1');
  echo User::$count; // 1 प्रिंट करेगा
  
  $user2 = new User('user2');
  echo User::$count; // 2 प्रिंट करेगा
?>
Задание 1

हमारे काउंटर को निजी बनाएं। इसका मान एक विशेष विधि के माध्यम से प्राप्त किया जा सकता है।