Példa a static használatára az OOP-ban PHP-ben
Tegyük fel, hogy van egy User osztályunk:
<?php
class User
{
public $name;
public function __construct($name)
{
$this->name = $name;
}
}
?>
Állítsuk be úgy, hogy ez az osztály számolja
a saját objektumainak számát. Ehhez készítsünk
egy statikus count tulajdonságot. Kezdetben
állítsuk be értékének 0-át, és minden új
objektum létrehozásakor növeljük meg ezt az értéket
1-gyel.
A számláló értékének növelését az objektum konstruktorában végezzük el:
<?php
class User
{
public static $count = 0; // objektumszámláló
public $name;
public function __construct($name)
{
$this->name = $name;
// Növeljük a számlálót az objektum létrehozásakor:
self::$count++;
}
}
?>
Ellenőrizzük, hogy minden működik-e:
<?php
$user1 = new User('user1');
echo User::$count; // kiír 1-et
$user2 = new User('user2');
echo User::$count; // kiír 2-t
?>
Tegye a számlálónkat priváttá. Legyen lehetőség az értékének lekérésére egy speciális metódussal.