单例模式及php实现

单例模式:

  单例模式(Singleton Pattern):单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,它提供全局访问的方法。

单例模式的要点有三个:一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。单例模式是一种对象创建型模式。单例模式又名单件模式或单态模式。

单例模式包含如下角色:

  • Singleton:单例

UML图:

  ../_images/Singleton.jpg

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();        
原文地址:https://www.cnblogs.com/yujon/p/5532831.html