Пример статичких метода и својстава у ООП у PHP
Претпоставимо да имамо следећу класу 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
Направите наш бројач приватним. Нека његова вредност може да се добије помоћу посебног метода.