单例模式:
单例模式(Singleton Pattern):单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,它提供全局访问的方法。
单例模式的要点有三个:一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。单例模式是一种对象创建型模式。单例模式又名单件模式或单态模式。
单例模式包含如下角色:
- Singleton:单例
UML图:
class TestClass{ private static $instance; private function __construct(){ echo "I am a instance of TestClass"; } public static function getInstance(){ if(!self::$instance instanceOf TestClass){ self::$instance = new self(); } return self::$instance; } } TestClass::getInstance(); TestClass::getInstance();