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 相关文章推荐
在WIN98下以apache模块方式安装php
Oct 09 PHP
Discuz! 5.0.0论坛程序中加入一段js代码,让会员点击下载附件前自动弹出提示窗口
Apr 18 PHP
php中apc缓存使用示例
Dec 25 PHP
php递归函数中使用return的注意事项
Jan 17 PHP
php导出word文档与excel电子表格的简单示例代码
Mar 08 PHP
thinkphp特殊标签用法概述
Nov 24 PHP
在Nginx上部署ThinkPHP项目教程
Feb 02 PHP
smarty模板引擎之配置文件数据和保留数据
Mar 30 PHP
yii权限控制的方法(三种方法)
Dec 28 PHP
详解WordPress中分类函数wp_list_categories的使用
Jan 04 PHP
php 多文件上传的实现实例
Oct 23 PHP
Laravel框架使用技巧之使用url()全局函数返回前一个页面的地址方法详解
Apr 06 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
php制作中间带自己定义图片二维码的方法
2014/01/27 PHP
php中的单引号、双引号和转义字符详解
2017/02/16 PHP
php+redis消息队列实现抢购功能
2018/02/08 PHP
PHP ADODB实现事务处理功能示例
2018/05/25 PHP
alixixi runcode.asp的代码不错的应用
2007/08/08 Javascript
js最简单的拖拽效果实现代码
2010/09/24 Javascript
javaScript中的this示例学习详解及工作原理
2014/01/13 Javascript
jQuery 重复加载错误以及修复方法
2014/12/16 Javascript
jQuery实现当前页面标签高亮显示的方法
2015/03/10 Javascript
快速掌握Node.js之Window下配置NodeJs环境
2016/03/21 NodeJs
浅谈js构造函数的方法与原型prototype
2016/07/04 Javascript
AugularJS从入门到实践(必看篇)
2017/07/10 Javascript
在ABP框架中使用BootstrapTable组件的方法
2017/07/31 Javascript
iview给radio按钮组件加点击事件的实例
2017/09/30 Javascript
Vue-resource拦截器判断token失效跳转的实例
2017/10/27 Javascript
Node.js文件编码格式的转换的方法
2018/04/27 Javascript
webstrom Debug 调试vue项目的方法步骤
2018/07/17 Javascript
vue中使用echarts制作圆环图的实例代码
2018/07/27 Javascript
JS模拟浏览器实现全局搜索功能
2019/09/11 Javascript
python中Flask框架简单入门实例
2015/03/21 Python
python自动化脚本安装指定版本python环境详解
2017/09/14 Python
Python3使用正则表达式爬取内涵段子示例
2018/04/22 Python
python使用pygame框架实现推箱子游戏
2018/11/20 Python
Python+numpy实现矩阵的行列扩展方式
2019/11/29 Python
pycharm实现在虚拟环境中引入别人的项目
2020/03/09 Python
基于Python爬取搜狐证券股票过程解析
2020/11/18 Python
Street One瑞士:德国现代时装公司
2019/10/09 全球购物
管理失职检讨书
2014/02/12 职场文书
婚礼主持结束词
2014/03/13 职场文书
国旗下讲话演讲稿
2014/05/08 职场文书
村主任群众路线教育实践活动个人对照检查材料思想汇报
2014/10/01 职场文书
优秀教师单行材料
2014/12/16 职场文书
2016年度师德标兵先进事迹材料
2016/02/26 职场文书
简历上的自我评价,该怎么写呢?
2019/06/13 职场文书
2019XX公司员工考核管理制度!
2019/08/07 职场文书
PostgreSQL并行计算算法及参数强制并行度设置方法
2022/04/06 PostgreSQL