Пример на 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
?>
Направете го нашиот бројач приватен. Нека неговата вредност може да се добие со помош на специјален метод.