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 相关文章推荐
php提示undefined index的几种解决方法
May 21 PHP
php导出word格式数据的代码实例
Nov 25 PHP
取得单条网站评论以数组形式进行输出
Jul 28 PHP
php计算两个文件相对路径的方法
Mar 14 PHP
php实现求相对时间函数
Jun 15 PHP
Zend Framework教程之响应对象的封装Zend_Controller_Response实例详解
Mar 07 PHP
PHP简单获取多个checkbox值的方法
Jun 13 PHP
php in_array() 检查数组中是否存在某个值详解
Nov 23 PHP
Yii框架使用魔术方法实现跨文件调用功能示例
May 20 PHP
php微信支付之公众号支付功能
May 30 PHP
微信推送功能实现方式图文详解
Jul 12 PHP
Thinkphp5.0 框架使用模型Model添加、更新、删除数据操作详解
Oct 11 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
第十五节--Zend引擎的发展
2006/11/16 PHP
php下通过curl抓取yahoo boss 搜索结果的实现代码
2011/06/10 PHP
php使用strtotime和date函数判断日期是否有效代码分享
2013/12/25 PHP
几行代码轻松实现PHP文件打包下载zip
2017/03/01 PHP
JQuery从头学起第三讲
2010/07/06 Javascript
Jquery实现简单的动画效果代码
2012/03/18 Javascript
js分解url参数(面向对象-极简主义法应用)
2012/08/09 Javascript
js拦截alert对话框另类应用
2013/01/16 Javascript
网站404页面3秒后跳到首页的实例代码
2013/08/16 Javascript
javascript原生和jquery库实现iframe自适应高度和宽度
2014/07/18 Javascript
nodejs中实现sleep功能实例
2015/03/24 NodeJs
JavaScript基于ajax编辑信息用法实例
2015/07/15 Javascript
基于jPlayer三分屏的制作方法
2016/12/21 Javascript
JavaScript中数组Array方法详解
2017/02/27 Javascript
ExtJs异步无法向外传值和赋值的完美解决办法
2017/06/14 Javascript
JQuery 获取Dom元素的实例讲解
2017/07/08 jQuery
vue车牌号校验和银行校验实战
2019/01/23 Javascript
Vue基于vuex、axios拦截器实现loading效果及axios的安装配置
2019/04/26 Javascript
layui(1.0.9)文件上传upload,前后端的实例代码
2019/09/26 Javascript
使用vue-router切换页面时实现设置过渡动画
2019/10/31 Javascript
json解析大全 双引号、键值对不在一起的情况
2019/12/06 Javascript
前端深入理解Typescript泛型概念
2020/03/09 Javascript
[38:41]2014 DOTA2国际邀请赛中国区预选赛 LGD VS CNB
2014/05/22 DOTA
Python中逗号的三种作用实例分析
2015/06/08 Python
python爬虫爬取淘宝商品信息(selenum+phontomjs)
2018/02/24 Python
为什么黑客都用python(123个黑客必备的Python工具)
2020/01/31 Python
Python+Opencv身份证号码区域提取及识别实现
2020/08/25 Python
Why do we need Unit test
2013/01/03 面试题
报纸媒体创意广告词
2014/03/17 职场文书
领导干部廉政自律承诺书
2014/05/26 职场文书
公安机关查摆剖析材料
2014/10/10 职场文书
护士个人年终总结
2015/02/13 职场文书
技术员个人工作总结
2015/03/03 职场文书
工作失职检讨书范文
2015/05/05 职场文书
《曹冲称象》教学反思
2016/02/20 职场文书
DE1103使用报告
2022/04/05 无线电