PHP设计模式之----单例模式

什么是单例模式

单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。

为什么使用单例模式呢

使用单例模式可以避免大量的new操作。因为每一次new操作都会消耗系统和内存的资源。

单例模式特点(三私一公):

  (1)私有的静态属性 (保存类的实例)

  (2)私有的构造方法 (防止类外实例化)

  (3)私有的克隆方法 (防止通过克隆生成对象)

  (4)公有的静态方法 (调取这个类相当一个接口 )

class Singleton
{
    /**
     * 私有的静态属性 (保存类的实例)
     */
    private static $_instance;

    /**
     * Singleton constructor.
     * 私有的构造方法(防止类外实例化)
     */
    private function __construct()
    {
    }

    /**
     * 私有的克隆方法 (防止通过克隆生成对象)
     */
    public function __clone()
    {
    }

    /*
     * 公有的静态方法 (调取这个类相当一个接口 ):单例访问统一入口
     * */
    public static function getInstance()
    {
        if (!(self::$_instance instanceof self)) {
            self::$_instance = new self();
        }
        return self::$_instance;
    }

}

 

posted @ 2018-12-18 18:21  佛系-Coder  阅读(149)  评论(0编辑  收藏  举报