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者的疑难问答(2)
Oct 09 PHP
PHP中的MYSQL常用函数(php下操作数据库必备)
Sep 12 PHP
PHP常用技巧总结(附函数代码)
Feb 04 PHP
php $_SERVER windows系统与linux系统下的区别说明
Feb 14 PHP
php接口和抽象类使用示例详解
Mar 02 PHP
php实现每天自动变换随机问候语的方法
May 12 PHP
PHP链表操作简单示例
Oct 15 PHP
PHP Header用于页面跳转时的几个注意事项
Oct 21 PHP
thinkPHP5实现数据库添加内容的方法
Oct 25 PHP
PHP获取MySQL执行sql语句的查询时间方法
Aug 21 PHP
php反射学习之不用new方法实例化类操作示例
Jun 14 PHP
YII2.0框架行为(Behavior)深入详解
Jul 26 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
《神奇女侠:血脉》神力女超人大战犯罪公司
2020/04/09 欧美动漫
php mssql 数据库分页SQL语句
2008/12/16 PHP
PHP实现把数字ID转字母ID
2013/08/12 PHP
Jquery 基础学习笔记之文档处理
2009/05/29 Javascript
jQuery 判断页面元素是否存在的代码
2009/08/14 Javascript
jquery validator 插件增加日期比较方法
2010/02/21 Javascript
jquery中load方法的用法及注意事项说明
2014/02/22 Javascript
老生常谈javascript的类型转换
2016/10/12 Javascript
AngularJS实现自定义指令及指令配置项的方法
2017/11/20 Javascript
webpack项目调试以及独立打包配置文件的方法
2018/02/28 Javascript
React.js绑定this的5种方法(小结)
2018/06/05 Javascript
JavaScript笛卡尔积超简单实现算法示例
2018/07/30 Javascript
小程序如何构建骨架屏
2019/05/29 Javascript
详解vue项目中实现图片裁剪功能
2019/06/07 Javascript
vue 实现走马灯效果
2019/10/28 Javascript
JavaScript实现五子棋小游戏
2020/10/26 Javascript
Vue项目如何引入bootstrap、elementUI、echarts
2020/11/26 Vue.js
[04:48]DOTA2亚洲邀请赛林书豪为VGJ加油
2017/04/01 DOTA
[48:21]Mski vs VGJ.S Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
使用python检测主机存活端口及检查存活主机
2015/10/12 Python
python简单实现获取当前时间
2016/08/27 Python
python 机器学习之支持向量机非线性回归SVR模型
2019/06/26 Python
详解python播放音频的三种方法
2019/09/23 Python
python中取绝对值简单方法总结
2020/07/24 Python
Python tkinter制作单机五子棋游戏
2020/09/14 Python
英国羊皮鞋类领先品牌:Just Sheepskin
2019/12/12 全球购物
内部类的定义、种类以及优点
2013/10/16 面试题
英语专业毕业生自荐信
2013/10/28 职场文书
环保专业大学生职业规划设计
2014/01/10 职场文书
大学生村官考核材料
2014/05/23 职场文书
办理收楼委托书范本
2014/10/09 职场文书
2016学雷锋优秀志愿者事迹材料
2016/02/25 职场文书
导游词之五台山
2019/10/11 职场文书
面试必问:圣杯布局和双飞翼布局的区别
2021/05/13 HTML / CSS
DjangoRestFramework 使用 simpleJWT 登陆认证完整记录
2021/06/22 Python
为Centos安装指定版本的Docker
2022/04/01 Servers