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


Posted in PHP onDecember 05, 2012

单例类至少拥有以下三种公共元素:

    必须拥有一个构造函数,并且必须被标记为private。
    拥有一个保存类的实例的静态成员变量。
    拥有一个访问这个实例的公共的静态方法

具体使用方面,我在下面php实例中注释的很清楚:

<?php
 /**
  * by www.phpddt.com
  */
 class Mysql{
  //该属性用来保存实例
  private static $conn;
  //构造函数为private,防止创建对象
  private function __construct(){
   $this->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 相关文章推荐
如何开发一个虚拟域名系统
Oct 09 PHP
dedecms系统常用术语汇总
Apr 03 PHP
shopex中集成的站长统计功能的代码简单分析
Aug 11 PHP
php中静态类与静态变量用法的区别分析
Jan 15 PHP
php恢复数组的key为数字序列的方法
Apr 28 PHP
又十个超级有用的PHP代码片段
Sep 24 PHP
简单了解PHP编程中数组的指针的使用
Nov 30 PHP
Netbeans 8.2将支持PHP7 更精彩
Jun 13 PHP
php英文单词统计器
Jun 23 PHP
利用php的ob缓存机制实现页面静态化方法
Jul 09 PHP
PDO操作MySQL的基础教程(推荐)
Aug 18 PHP
Yii框架日志记录Logging操作示例
Jul 12 PHP
利用php实现禁用IE和火狐的缓存问题
Dec 03 #PHP
php自动给文章加关键词链接的函数代码
Nov 29 #PHP
PHP文章按日期(月日)SQL归档语句
Nov 29 #PHP
PHP以及MYSQL日期比较方法
Nov 29 #PHP
有道搜索和IP138的IP的API接口(PHP应用)
Nov 29 #PHP
PHP提示Notice: Undefined variable的解决办法
Nov 24 #PHP
php如何调用webservice应用介绍
Nov 24 #PHP
You might like
Windows下的PHP安装文件线程安全和非线程安全的区别
2014/04/23 PHP
微信支付开发维权通知实例
2016/07/12 PHP
php如何修改SESSION的生存存储时间的实例代码
2017/07/05 PHP
JavaScript 闭包在封装函数时的简单分析
2009/11/28 Javascript
ECMA5数组的新增方法有哪些及forEach()模仿实现
2015/11/03 Javascript
js纯数字逐一停止显示效果的实现代码
2016/03/16 Javascript
jQuery 出现Cannot read property ‘msie’ of undefined错误的解决方法
2016/11/23 Javascript
微信小程序 Nginx环境配置详细介绍
2017/02/14 Javascript
详解Vue.js组件可复用性的混合(mixin)方式和自定义指令
2017/09/06 Javascript
JS开发中基本数据类型具体有哪几种
2017/10/19 Javascript
Vue-cli-webpack搭建斗鱼直播步骤详解
2017/11/17 Javascript
基于Koa2写个脚手架模拟接口服务的方法
2018/11/27 Javascript
jQuery AJAX与jQuery事件的分析讲解
2019/02/18 jQuery
小程序识别身份证,银行卡,营业执照,驾照的实现
2019/11/05 Javascript
[01:02]DOTA2上海特锦赛SHOWOPEN
2016/03/25 DOTA
让python json encode datetime类型
2010/12/28 Python
python算法学习之桶排序算法实例(分块排序)
2013/12/18 Python
ubuntu环境下python虚拟环境的安装过程
2018/01/07 Python
Django保护敏感信息的方法示例
2019/05/09 Python
windows10下安装TensorFlow Object Detection API的步骤
2019/06/13 Python
Python 3 实现定义跨模块的全局变量和使用教程
2019/07/07 Python
python将邻接矩阵输出成图的实现
2019/11/21 Python
Python爬虫之爬取淘女郎照片示例详解
2020/07/28 Python
利用python爬取有道词典的方法
2020/12/08 Python
美国折扣宠物药房:Total Pet Supply
2018/05/27 全球购物
Nixon手表英国官网:美国尼克松手表品牌
2020/02/10 全球购物
企业厂长岗位职责
2013/12/17 职场文书
统计岗位职责
2014/02/21 职场文书
员工工作表现评语
2014/04/26 职场文书
演讲稿祖国在我心中
2014/05/04 职场文书
四风问题个人自查剖析材料思想汇报
2014/09/21 职场文书
电视新闻稿
2015/07/17 职场文书
小学生安全教育心得体会
2016/01/15 职场文书
HAM-2000摩机图
2021/04/22 无线电
手把手教你实现PyTorch的MNIST数据集
2021/06/28 Python
一文了解JavaScript用Element Traversal新属性遍历子元素
2021/11/27 Javascript