wikipoints/ground/classes/singleton.php

35 lines
995 B
PHP

<?php
// Базовый синглтон
abstract class Singleton
{
protected static $_instance;
private function __construct(){
/**
* При этом в функцию можно вписать
* свой код инициализации. Также можно
* использовать деструктор класса.
* Эти функции работают по прежднему,
* только не доступны вне класса
*/
}
private function __clone(){
}
/**
* Статическая функция, которая возвращает
* экземпляр класса или создает новый при
* необходимости
*
* @return SingletonTest
*/
public static function getInstance() {
if (null === self::$_instance) {
self::$_instance = new self();
}
return self::$_instance;
}
}