Piemērs static izmantošanai OOP PHP
Pieņemsim, ka mums ir šāda klase User:
<?php
class User
{
public $name;
public function __construct($name)
{
$this->name = $name;
}
}
?>
Izveidosim šo klasi tā, lai tā saskaitītu
savu objektu skaitu. Lai to izdarītu, izveidosim
statisko īpašību count. Sākotnēji
ierakstīsim tajā vērtību 0, un, veidojot
katru jaunu objektu, palielināsim
šo vērtību par 1.
Palielināsim mūsu skaitītāja vērtību objekta konstruktorā:
<?php
class User
{
public static $count = 0; // objektu skaitītājs
public $name;
public function __construct($name)
{
$this->name = $name;
// Palielinām skaitītāju, veidojot objektu:
self::$count++;
}
}
?>
Pārbaudīsim, vai viss darbojas:
<?php
$user1 = new User('user1');
echo User::$count; // izvadīs 1
$user2 = new User('user2');
echo User::$count; // izvadīs 2
?>
Padariet mūsu skaitītāju privātu. Lai tā vērtību varētu iegūt ar speciālas metodes palīdzību.