找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 419|回复: 0
打印 上一主题 下一主题

php单例模式实现(对象只被创建一次)

[复制链接]

2500

主题

2513

帖子

7520

积分

论坛元老

Rank: 8Rank: 8

积分
7520
跳转到指定楼层
楼主
发表于 2018-2-14 08:26:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            单例类至少拥有以下三种公共元素:
    必须拥有一个构造函数,并且必须被标记为private。
    拥有一个保存类的实例的静态成员变量。
    拥有一个访问这个实例的公共的静态方法
具体使用方面,我在下面php实例中注释的很清楚:
[U]复制代码[/U] 代码如下:
conn = mysql_connect('localhost','root','');
  }
  //创建一个用来实例化对象的方法
  public static function getInstance(){
   if(!(self:conn instanceof self)){
    self:conn = new self;
   }
   return self:conn;
  }
  //防止对象被复制
  public function __clone(){
   trigger_error('Clone is not allowed !');
  }
}
//只能这样取得实例,不能new 和 clone
$mysql = Mysql::getInstance();
?>
            
            
您可能感兴趣的文章:
  • php设计模式 Proxy (代理模式)
  • php设计模式 Template (模板模式)
  • php设计模式 Singleton(单例模式)
  • PHP最常用的2种设计模式工厂模式和单例模式介绍
  • php设计模式小结
  • php利用单例模式实现日志处理类库
  • PHP设计模式之观察者模式(Observer)详细介绍和代码实例
  • PHP实现单例模式最安全的做法
  • PHP基于单例模式实现的mysql类
  • PHP基于单例模式编写PDO类的方法
  • php基于单例模式封装mysql类完整实例
  • PHP单例模式简单用法示例
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端