PHP da OOP da static dan foydalanishga misol
Faraz qilaylik, bizda User nomli shunday klass mavjud:
<?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:
<?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:
<?php
$user1 = new User('user1');
echo User::$count; // 1 chiqadi
$user2 = new User('user2');
echo User::$count; // 2 chiqadi
?>
Bizning hisoblagichimizni privat qiling. Uning qiymati maxsus metod orqali olingichi mumkin bo'lsin.