单例模式-创建型设计模式 [PHP]

使应用中只存在一个对象的实例,并且使这个单实例负责所有对该对象的调用

final class Singleton{\n    private static ?Singleton $instance = null;\n    public static function getInstance(): Singleton\n    {\n        if (static::$instance === null) {\n            static::$instance = new static();\n        }\n        return static::$instance;\n    }\n    private function __construct(){\n    }\n    private function __clone(){\n    }\n    private function __wakeup(){\n    }\n}

类型前面的问号表示参数或返回值可为空(null),是PHP7的新特性例如,?string str 表示str的值可以为null或字符串此用法不只局限于静态类型,类和接口也可使用,例如,?MyInterface