PHP设计模式——单例模式

    xiaoxiao2023-09-27  148

    PHP设计模式——单例模式

    单例模式(Singleton),也叫单子模式,是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在。许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。比如在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据由一个单例对象统一读取,然后服务进程中的其他对象再通过这个单例对象获取这些配置信息。这种方式简化了在复杂环境下的配置管理。

    实现思路

    单例模式的从实现步骤上来讲,分为三步:

    1.私有构造方法,使得外部不能通过new的方式实例化对象 2.对外提供获取该类实例的静态方法 3.类的内部创建该类的对象,通过第 2 步的静态方法返回

    class Single { private $name;//声明一个私有的实例变量 private function __construct(){//声明私有构造方法为了防止外部代码使用new来创建对象。 } private function __clone(){ }//覆盖__clone()方法,禁止克隆 static public $instance;//声明一个静态变量(保存在类中唯一的一个实例) static public function getinstance(){//声明一个getinstance()静态方法,用于检测是否有实例对象 if(!self::$instance) self::$instance = new self(); return self::$instance; } public function setname($n){ $this->name = $n; } public function getname(){ return $this->name; } }
    最新回复(0)