Shembull për static në OOP në PHP
Le të themi se kemi klasën User:
<?php
class User
{
public $name;
public function __construct($name)
{
$this->name = $name;
}
}
?>
Le ta bëjmë që kjo klasë të numërojë
numrin e objekteve të saj. Për këtë do të krijojmë
një veti statike count. Fillimisht
do t'i caktojmë vlerën 0, dhe gjatë krijimit
çdo objekti të ri do ta rrisim
këtë vlerë me 1.
Do ta rrisim vlerën e numëruesit tonë në konstruktorin e objektit:
<?php
class User
{
public static $count = 0; // numërues i objekteve
public $name;
public function __construct($name)
{
$this->name = $name;
// Rritim numëruesin kur krijohet objekti:
self::$count++;
}
}
?>
Le të kontrollojmë nëse gjithçka funksionon:
<?php
$user1 = new User('user1');
echo User::$count; // do të shfaqet 1
$user2 = new User('user2');
echo User::$count; // do të shfaqet 2
?>
Bëni numëruesin tonë privat. Le të jetë e mundur të merret vlera e tij përmes një metode të veçantë.