Как работать с паттерном Singleton в PHP

Dan J
Доброго времени суток, Помогите с пониманием как написать метод makeChicken() с использованием паттерна Singleton, дабы в отдельно взятом амбаре мог бы быть только один ципленок.
<?php 

require './Chicken.php'; class Barn {

public $name = "";
public $chickens = 0;
function __construct($name) {
$this->name = $name;
echo 'The class "', __CLASS__, '" was initiated!<br>';
}
public function getName() {
echo $this->name . "<br>";
}
public function makeChicken() {
$chicken = new Chicken;
$this->chickens += 1;
echo "Total chickens: " . $this->chickens . "<br>";
}
}
$barn = new Barn("Bob's barn");
$barn->getName();
?>
<?php 

class Chicken {

	public static function Instance() {

		static $inst = null;

if ($inst === null) {
$inst = new Chicken(); // видел здесь за место Chicken пишут static, что это значит?
}
return $inst;
}
protected function __construct() {

echo 'The class "', __CLASS__, '" was initiated!<br>';
}
} ?>
Dan J почти 3 года назадСпасибо 0
1 чел.