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计划任务之关闭浏览器后仍然继续执行的函数
Jul 22 PHP
适用于php-5.2 的 php.ini 中文版[金步国翻译]
Apr 17 PHP
composer.lock文件的作用
Feb 03 PHP
phpmailer简单发送邮件的方法(附phpmailer源码下载)
Jun 13 PHP
Android AsyncTack 异步任务实例详解
Nov 02 PHP
Yii 2.0如何使用页面缓存方法示例
May 23 PHP
浅谈thinkphp5 instance 的简单实现
Jul 30 PHP
PHP实现双链表删除与插入节点的方法示例
Nov 11 PHP
PHP使用HTML5 FormData对象提交表单操作示例
Jul 02 PHP
laravel 关联关系遍历数组的例子
Oct 10 PHP
php 多继承的几种常见实现方法示例
Nov 18 PHP
laravel框架select2多选插件初始化默认选中项操作示例
Feb 18 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中如何直接执行SHELL
2013/06/28 PHP
PHP框架Laravel的小技巧两则
2015/02/10 PHP
常用的php图片处理类(水印、等比缩放、固定高宽)分享
2015/06/19 PHP
浅谈php中变量的数据类型判断函数
2017/03/04 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
2017/08/28 PHP
caller和callee的区别介绍及演示结果
2013/03/10 Javascript
一个简单的jquery的多选下拉框(自写)
2014/05/05 Javascript
js触发select onchange事件的小技巧
2014/08/05 Javascript
轻松创建nodejs服务器(7):阻塞操作的实现
2014/12/18 NodeJs
jquery简单实现图片切换效果的方法
2015/05/12 Javascript
如何使用AngularJs打造权限管理系统【简易型】
2016/05/09 Javascript
JS实现商品筛选功能
2020/08/19 Javascript
JavaScript基于activexobject连接远程数据库SQL Server 2014的方法
2017/07/12 Javascript
Node.js创建Web、TCP服务器
2017/12/05 Javascript
Node.js上传文件功能之服务端如何获取文件上传进度
2018/02/05 Javascript
JS实现的DOM插入节点操作示例
2018/04/04 Javascript
node.js使用免费的阿里云ip查询获取ip所在地【推荐】
2018/09/03 Javascript
vue项目每30秒刷新1次接口的实现方法
2018/12/04 Javascript
详解在微信小程序的JS脚本中使用Promise来优化函数处理
2019/03/06 Javascript
产制造追溯系统之通过微信小程序实现移动端报表平台
2019/06/03 Javascript
JS开发 富文本编辑器TinyMCE详解
2019/07/19 Javascript
js实现详情页放大镜效果
2020/10/28 Javascript
Python原始字符串(raw strings)用法实例
2014/10/13 Python
Python的Django框架中使用SQLAlchemy操作数据库的教程
2016/06/02 Python
python使用pandas实现数据分割实例代码
2018/01/25 Python
Django REST framework视图的用法
2019/01/16 Python
Python 自动登录淘宝并保存登录信息的方法
2019/09/04 Python
python验证码图片处理(二值化)
2019/11/01 Python
Python pexpect模块及shell脚本except原理解析
2020/08/03 Python
用Python实现定时备份Mongodb数据并上传到FTP服务器
2021/01/27 Python
初中生学习生活的自我评价
2013/11/20 职场文书
高校教师岗位职责
2014/03/18 职场文书
团拜会策划方案
2014/06/07 职场文书
教师岗位职责范本
2015/04/02 职场文书
python3使用diagrams绘制架构图的步骤
2021/04/08 Python
Nginx实现会话保持的两种方式
2022/03/18 Servers