首页 > 代码库 > php的单例模式
php的单例模式
单例模式:指的是一个对象的模式,指一个类只能创建一个对象。
既然限制一个类只能创建一个对象,就是说要关闭其他创建对象的途径。
所以实现单例,必须满足一下条件:
1.不让克隆(私有克隆方法)
2.不让创建对象(私有构造方法,不能在类外部使用new关键字创建对象)
3.在类中创建对象(静态方法)
4.判断对象是否存在,如果存在返回原对象,否则创建新对象
使用单例模式好处在于可以节省资源,比如Db类设计,比如window系统常见的资源管理器。
<?php class Single{ //定义一个属性保存对象 private static $single; //私有构造方法 private function __construct($name){ $this->name = $name; } //私有化克隆方法 private function __clone(){ } //静态方法:让类进入到类的内部进行实例化得到对象 public static function getInstance($name){ //判断对象是否存在,如果存在返回原对象,否则创建新对象 if(!self::$single){ self::$single = new Single($name); } return self::$single; } } $single = Single::getInstance(‘libai‘); var_dump($single);$single = Single::getInstance(‘dufu‘); var_dump($single);
php的单例模式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。