php单例设计方法(php设计模式之单例模式用法经典示例分析)
类别:编程学习 浏览量:439
时间:2021-10-22 07:08:43 php单例设计方法
php设计模式之单例模式用法经典示例分析本文实例讲述了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程序设计有所帮助。
原文链接:https://www.cnblogs.com/lisqiong/p/6552815.html
您可能感兴趣
- thinkphp微信开发教程(微信公众平台开发教程④ ThinkPHP框架下微信支付功能图文详解)
- php中变量定义规则(PHP中__set实例用法和基础讲解)
- php依赖注入和控制反转的区别(php反射学习之依赖注入示例)
- php连接数据库拒绝使用域名(访问php时提示内存位置访问无效的解决办法和思路分析)
- dedecms5.7使用教程(dedecms v5.7提示php.ini register_globals must is Off错误的解决方法)
- php创建文件(php创建多级目录与级联删除文件的方法示例)
- php入门教程环境搭建教程(PHP从零开始打造自己的MVC框架之入口文件实现方法详解)
- vuephp后台开发框架(Vue+thinkphp5.1+axios实现文件上传)
- php中function函数的用法(PHP中quotemeta函数的用法讲解)
- php框架laravel使用(laravel5环境隐藏index.php后缀apache的方法)
- php的数据类型约束的好处(PHP中的Iterator迭代对象属性详解)
- thinkphpmodel使用教程(Thinkphp5.0 框架Model模型简单用法分析)
- php实现session入库实例(PHP使用Session实现上传进度功能详解)
- php入门教程源代码修改教程(php+js实现的无刷新下载文件功能示例)
- ubuntu安装php(在Ubuntu 18.04上安装PHP 7.3 7.2和7.0的方法)
- php 与asp对比(asp.net和php的区别点总结)
- 44岁夏雨演谋女郎爸,大其24岁却看不出,互动不怕袁泉吃醋(44岁夏雨演谋女郎爸)
- 全椒人,你还记得吗 那年,那人,那网,那些我们的青春记忆(全椒人你还记得吗)
- 全椒人在苏州10周年联谊会在苏州举办(全椒人在苏州10周年联谊会在苏州举办)
- 这个全椒人被通报表彰,看看你认识吗(这个全椒人被通报表彰)
- 全椒人,38年集体回忆 1980-2018 ,看完不要哭(全椒人38年集体回忆)
- 董元奔吟咏历代文人 1012新旧均可 全椒人张璪 1022 -1093(董元奔吟咏历代文人)
热门推荐
- 如何在windows上搭建ftp服务器(Windows Server 2016如何搭建部署FTP服务器)
- reactnative混合开发教程(教你使用vscode 搭建react-native开发环境)
- mysql日常运维(MySQL从库维护经验分享)
- DataTable的增删改查操作
- php异常和错误区别(PHP批斗大会之缺失的异常详解)
- jsfor循环是什么意思(JavaScript中三种for循环语句的使用总结for、for...in、for...of)
- vue创建项目同时引入elementui(Vue Element前端应用开发之开发环境的准备工作)
- 五分钟学会docker镜像与容器操作(Docker如何制作自己镜像并上传dockerhub)
- python中对象方法和顶级方法(Python3.5面向对象程序设计之类的继承和多态详解)
- ViewState的用法
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9