在 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()
方法中,判断实例是否已经存在,如果不存在则实例化一个新对象,否则返回已有的实例。