PHP实现单例模式

作者: ImClive | 来源:发表于2018-04-12 20:22 被阅读0次
    <?php
    /**
    * 单例模式实现
    */
    class Singleton
    {
        //静态变量保存全局实例
        private static $instance = null;
    
        private function __clone()
        {
            //私有构造函数,防止外界实例化对象
        }
    
        private function __construct()
        {
            //私有克隆函数,防止外界克隆对象
        }
    
        //静态方法,单例统一访问入口
        public static function getInstance()
        {
            if (self::$instance instanceof Singleton) {
                echo "return exist instance\n";
                return self::$instance;
            }
            self::$instance = new Singleton();
            echo "return new instance\n";
            return self::$instance;
        }
    }
    
    $a = Singleton::getInstance();//output: return new instance
    $a = Singleton::getInstance();//output: return exist instance
    

    相关文章

      网友评论

        本文标题:PHP实现单例模式

        本文链接:https://www.haomeiwen.com/subject/dyifkftx.html