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.ini实现Mysql导入数据库文件最大限制的修改方法
Dec 11 PHP
PHP版自动生成文章摘要
Jul 23 PHP
PHP 函数学习简单小结
Jul 08 PHP
PHP求最大子序列和的算法实现
Jun 24 PHP
php UBB 解析实现代码
Nov 27 PHP
PHP数据库万能引擎类adodb配置使用以及实例集锦
Jun 12 PHP
PHP读取汉字的点阵数据
Jun 22 PHP
php等比例缩放图片及剪切图片代码分享
Feb 13 PHP
PHP中调用C/C++制作的动态链接库的教程
Mar 10 PHP
php PDO异常处理详解
Nov 20 PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
Sep 17 PHP
php使用redis的有序集合zset实现延迟队列应用示例
Feb 20 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
在PHP中使用XML
2006/10/09 PHP
对比PHP对MySQL的缓冲查询和无缓冲查询
2016/07/01 PHP
thinkPHP自动验证机制详解
2016/12/05 PHP
详解php 使用Callable Closure强制指定回调类型
2017/10/26 PHP
php常用字符串长度函数strlen()与mb_strlen()用法实例分析
2019/06/25 PHP
豆瓣网的jquery代码实例
2008/06/15 Javascript
jquery Mobile入门—外部链接切换示例代码
2013/01/08 Javascript
Js 代码中,ajax请求地址后加随机数防止浏览器缓存的原因
2013/05/07 Javascript
jQuery模拟点击A标记示例参考
2014/04/17 Javascript
javascript数据类型示例分享
2015/01/19 Javascript
javascript实现点击提交按钮后显示loading的方法
2015/07/03 Javascript
JS字符串的切分用法实例
2016/02/22 Javascript
javascript关于继承解析
2016/05/10 Javascript
JS实现获取当前URL和来源URL的方法
2016/08/24 Javascript
Javascript oop设计模式 面向对象编程简单实例介绍
2016/12/13 Javascript
15个非常实用的JavaScript代码片段
2016/12/18 Javascript
使用jquery给新生的th绑定hover事件的实例
2017/02/10 Javascript
jqgrid实现简单的单行编辑功能
2017/09/30 Javascript
ES6学习教程之对象字面量详解
2017/10/09 Javascript
Angular中使用ng-zorro图标库部分图标不能正常显示问题
2019/04/22 Javascript
微信小程序后端无法保持session的原因及解决办法问题
2020/03/20 Javascript
JS箭头函数和常规函数之间的区别实例分析【 5 个区别】
2020/05/27 Javascript
vue实现从外部修改组件内部的变量的值
2020/07/30 Javascript
详解在Python中处理异常的教程
2015/05/24 Python
Python模拟登陆淘宝并统计淘宝消费情况的代码实例分享
2016/07/04 Python
解决Scrapy安装错误:Microsoft Visual C++ 14.0 is required...
2017/10/01 Python
Python向Excel中插入图片的简单实现方法
2018/04/24 Python
Python生成短uuid的方法实例详解
2018/05/29 Python
Python中判断子串存在的性能比较及分析总结
2019/06/23 Python
django中使用事务及接入支付宝支付功能
2019/09/15 Python
Python面向对象多态实现原理及代码实例
2020/09/16 Python
英国家庭家具、照明和花园家具购物网站:Furniture123
2018/12/31 全球购物
策划助理岗位职责
2013/11/18 职场文书
2014年乡镇个人工作总结
2014/12/03 职场文书
技术入股协议书
2016/03/22 职场文书
如何使JavaScript休眠或等待
2021/04/27 Javascript