php设计模式之单例模式用法经典示例分析


Posted in PHP onSeptember 20, 2019

本文实例讲述了php设计模式之单例模式用法。分享给大家供大家参考,具体如下:

<?php
/**
* @desc 单例模式
* 目的:防止过多的new对象和clone对象,没有对象的时候new对象并缓存,始终保持都是同一个对象实例
* 特点:php的单例是进程中的单例,而不像java属于内存中的单例
* **/
class single{
protected static $ins = null;//声明一个静态变量,用来存储类的实例
private $name;//声明一个私有的实例变量
/**
* 私有化构造方法,防止不断的创建对象
* **/
private function __construct(){
}
public static function getIns(){
if(self::$ins===null){
self::$ins = new self();
}
return self::$ins;
}
public function setName($name){
$this->name = $name;
}
public function getName(){
return $this->name;
}  
}
$single1 = single::getIns();
$single2 = single::getIns();
$single1->setName('hello world!');
$single2->setName('hello php!');
echo $single1->getName();//输出结果:hello php!
echo "<br/>":
echo $single2->getName();//输出结果:hello php!
/***
* 分析:输出的结果都是hello php!
* 采用了单例模式对象$single1与$single2是等价的,因此对象$single1与$single2都在设置类的变量时指向都是一致的,变量值取对象设置的最新的一个值
* **/

运行结果:

hello php!
hello php!

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php获取本地图片文件并生成xml文件输出具体思路
Apr 27 PHP
CodeIgniter图像处理类的深入解析
Jun 17 PHP
深入解析Session是否必须依赖Cookie
Aug 02 PHP
php文件服务实现虚拟挂载其他目录示例
Apr 17 PHP
浅析PHP程序设计中的MVC编程思想
Jul 28 PHP
php魔术变量用法实例详解
Nov 13 PHP
php简单图像创建入门实例
Jun 10 PHP
作为程序员必知的16个最佳PHP库
Dec 09 PHP
利用PHP自动生成印有用户信息的名片
Aug 01 PHP
PHP使用FFmpeg获取视频播放总时长与码率等信息
Sep 13 PHP
启用OPCache提高PHP程序性能的方法
Mar 21 PHP
关于laravel后台模板laravel-admin select框的使用详解
Oct 03 PHP
php数组和链表的区别总结
Sep 20 #PHP
php输出反斜杠的实例方法
Sep 19 #PHP
php实现session共享的实例方法
Sep 19 #PHP
php进行md5加密简单实例方法
Sep 19 #PHP
php解决安全问题的方法实例
Sep 19 #PHP
PHP中16个高危函数整理
Sep 19 #PHP
php实例化一个类的具体方法
Sep 19 #PHP
You might like
浅析使用Turck-mmcache编译来加速、优化PHP代码
2013/06/20 PHP
php递归函数中使用return的注意事项
2014/01/17 PHP
PHP文件上传之多文件上传的实现思路
2016/01/27 PHP
探究Laravel使用env函数读取环境变量为null的问题
2016/12/06 PHP
Yii框架批量插入数据扩展类的简单实现方法
2017/05/23 PHP
Using the TextRange Object
2006/10/14 Javascript
JS写的数字拼图小游戏代码[学习参考]
2008/10/29 Javascript
javascript globalStorage类代码
2009/06/04 Javascript
jquery 插件学习(五)
2012/08/06 Javascript
有关于JS构造函数的重载和工厂方法
2013/04/07 Javascript
js保留小数点后几位的写法
2014/01/03 Javascript
js获取当前地址 JS获取当前URL的示例代码
2014/02/26 Javascript
JavaScript学习笔记之定时器
2015/01/22 Javascript
深入分析Cookie的安全性问题
2015/03/01 Javascript
JavaScript实现的链表数据结构实例
2015/04/02 Javascript
JavaScript基本的输出和嵌入式写法教程
2015/10/20 Javascript
详解封装基础的angular4的request请求方法
2018/06/05 Javascript
微信小程序如何修改本地缓存key中单个数据的详解
2019/04/26 Javascript
在服务器端实现无间断部署Python应用的教程
2015/04/16 Python
Python下载懒人图库JavaScript特效
2015/05/28 Python
5种Python单例模式的实现方式
2016/01/14 Python
对numpy Array [: ,] 的取值方法详解
2018/07/02 Python
对python tkinter窗口弹出置顶的方法详解
2019/06/14 Python
python2与python3爬虫中get与post对比解析
2019/09/18 Python
Python drop方法删除列之inplace参数实例
2020/06/27 Python
HTML 5.1来了 9月份正式发布 更新内容预览
2016/04/26 HTML / CSS
全球度假村:Club Med
2017/11/27 全球购物
Clarks其乐鞋荷兰官网:Clarks荷兰
2019/07/05 全球购物
北京捷通华声语音技术有限公司Java软件工程师笔试题
2012/04/10 面试题
思想专业自荐信范文
2013/12/25 职场文书
《乌塔》教学反思
2014/02/17 职场文书
优秀党员获奖感言
2014/02/18 职场文书
2015年清明节活动总结
2015/02/09 职场文书
单位提档介绍信
2015/10/22 职场文书
详解CocosCreator项目结构机制
2021/04/14 Javascript
游戏开发中如何使用CocosCreator进行音效处理
2021/04/14 Javascript