欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP实现单例模式

程序员文章站 2022-07-02 22:50:28
```php ......
<?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