温馨提示×

php self如何实现单例模式

PHP
小樊
82
2024-07-13 01:58:23
栏目: 编程语言

在 PHP 中,可以通过以下方式实现单例模式:

class Singleton {
    private static $instance;

    private function __construct() {
        // 私有构造函数,防止外部实例化
    }

    public static function getInstance() {
        if (self::$instance === null) {
            self::$instance = new self();
        }
        return self::$instance;
    }
}

// 使用单例模式
$singleton1 = Singleton::getInstance();
$singleton2 = Singleton::getInstance();

var_dump($singleton1 === $singleton2); // 输出 true,表示是同一个实例

在上面的示例中,通过私有化构造函数和静态方法 getInstance() 来实现单例模式。在 getInstance() 方法中,判断实例是否已经存在,如果不存在则实例化一个新对象,否则返回已有的实例。

0