位置: 编程技术 - 正文

PHP常用的三种设计模式汇总(php常用的三种设置方式)

编辑:rootadmin

推荐整理分享PHP常用的三种设计模式汇总(php常用的三种设置方式),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php常用设计模式(大总结),php常用的设计模式有哪些,php常用设计模式(大总结),php常用的三种设置方法,php常用设计模式和应用场景,php常用的三种设置方式,php常用的三种设置方法,php常用的三种设计方法,内容如对您有帮助,希望把文章链接给更多的朋友!

本篇文章是学习PHP中常用的三种设计模式的笔记及总结,不管采用哪一门语言开发什么,几乎都会使用到设计模式,我们为什么需要设计模式呢?它的诞生对于我们开发人员来说有什么样的作用与意义呢?

相信做iOS开发的人员对设计模式也会挺熟悉吧?比如单例设计模式、工厂设计模式、观察者模式、MVC框架结构设计模式等。

接下来我们一起来学习PHP中最常用的三种设计模式:单例设计模式、工厂设计模式和观察者设计模式。

单例设计模式

所谓单例模式,即在应用程序中最多只有该类的一个实例存在,一旦创建,就会一直存在于内存中!

单例设计模式常应用于数据库类设计,采用单例模式,只连接一次数据库,防止打开多个数据库连接。

一个单例类应具备以下特点:

单例类不能直接实例化创建,而是只能由类本身实例化。因此,要获得这样的限制效果,构造函数必须标记为private,从而防止类被实例化。

需要一个私有静态成员变量来保存类实例和公开一个能访问到实例的公开静态方法。

PHP常用的三种设计模式汇总(php常用的三种设置方式)

在PHP中,为了防止他人对单例类实例克隆,通常还为其提供一个空的私有__clone()方法。

单例模式的例子:

工厂设计模式

工厂设计模式常用于根据输入参数的不同或者应用程序配置的不同来创建一种专门用来实例化并返回其对应的类的实例。

我们举例子,假设矩形、圆都有同样的一个方法,那么我们用基类提供的API来创建实例时,通过传参数来自动创建对应的类的实例,他们都有获取周长和面积的功能。

观察者设计模式

观察者模式是挺常见的一种设计模式,使用得当会给程序带来非常大的便利,使用得不当,会给后来人一种难以维护的想法。

什么是观察者模式?一个对象通过提供方法允许另一个对象即观察者 注册自己)使本身变得可观察。当可观察的对象更改时,它会将消息发送到已注册的观察者。这些观察者使用该信息执行的操作与可观察的对象无关。结果是对象可以相互对话,而不必了解原因。观察者模式是一种事件系统,意味着这一模式允许某个类观察另一个类的状态,当被观察的类状态发生改变的时候,观察类可以收到通知并且做出相应的动作;观察者模式为您提供了避免组件之间紧密耦。看下面例子你就明白了!

小结

初入PHP的世界,目前只了解这些基本的设计模式,慢慢学着去应用!如果文中有不对之处,请在评论中指出,我会在明确之后更正文章内容!

PHP中include/require/include_once/require_once使用心得 最近一直在抽时间来学习PHP,据说PHP是世界上最好的语言,于是各大论坛炸开了锅!哈哈,我们这里不是来讨论哪门语言是最好的语言,我们是在学习PH

PHP打印输出函数汇总 本篇文章一直来学习PHP中所有用于输出信息的函数,分类比较来学习其相同点与不同点,掌握日常开发中必备的技巧。开发就一定需要调试代码,而PHP

总结对比php中的多种序列化 前言序列化是将对象状态转换为可保持或可传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存

标签: php常用的三种设置方式

本文链接地址:https://www.jiuchutong.com/biancheng/301718.html 转载请保留说明!

上一篇:php微信开发接入(php开发接口)

下一篇:PHP中include/require/include_once/require_once使用心得

  • 研发支出属于什么现金流量项目
  • 城建税减半征收政策文件
  • 本年利润借方余额意味什么
  • 年终奖个人所得税计算器
  • 小规模发票单张限额
  • 小规模无进项怎么补税
  • 工程施工的借方和贷方
  • 运输费增值税专用发票几个点
  • 工资单上的retro
  • 账户认证操作
  • 专家咨询费个人所得税怎么计算
  • 卖掉的固定资产计入什么科目
  • 定期存款准备金是什么
  • 集团内部是什么意思
  • 合作社收到补贴款如何入账
  • 企业设备维修管理制度
  • 免税的苗木发票抵扣税费怎么算
  • 税务局代增值税专用发票盖什么章
  • 个人非货币性资产投资的税务筹划
  • 开办费要如何扣款
  • 增值税减免的账务处理可以直接应交税费减免税款吗
  • 增值税交完之后还要交什么税
  • 小规模租赁收入申报流程
  • 取得土地的流程
  • 鸿蒙工具栏在哪里
  • 文件类型有几种分类
  • 发票金额与实际金额不一致违法吗
  • PHP中Http协议post请求参数
  • 股权和债权有无区别
  • 个人非货币性资产投资个人所得税
  • sgmain.exe - sgmain是什么进程 有何作用
  • executor进程
  • 存放同业属于什么业务
  • 往来款怎么查
  • 政府财政会计核算基础是什么
  • php批量删除文件
  • 企业自建房出售给员工个人后还需要缴纳土地使用税么
  • 承包安装工程活怎么接
  • 利润表中所得税费用为负数是什么意思
  • 财务报表上期金额是指什么意思
  • 预计净残值影响折旧吗
  • 以前年度应收账款贷方余额如何调整
  • mysql导出用户和权限
  • 发票盖错章怎么擦掉
  • 餐具报损率一般为多少
  • 工程完工后的质保金怎么入账
  • 公司健身器材使用制度
  • 实物投资需要缴纳增值税吗
  • 返利开红字发票怎么做账
  • 办理房产证的时候可以加孩子的名字吗
  • 平销返利销项税
  • 返还利润含税吗
  • 食品算日用品吗
  • 公司账户可以转账到信用卡吗
  • 禁用windows键快捷键
  • centos gogs
  • 联想y400装win8
  • ac1st19.dll
  • win10激活后是什么样子
  • linux中cat命令的用法含义
  • 桌面上家庭组图标是干嘛
  • win8系统怎么设置
  • 微软发布Win10优化工具
  • window10如何修改电脑名称
  • win7系统计算机管理打不开
  • Win8中漂亮的metro开始画面图标最大列数的设定方法
  • jq拖拽div替换位置
  • node.js的安装方法
  • 关于android中view的说法正确的是
  • python上传文件到网站
  • unity方法大全
  • 使用ngView配合AngularJS应用实现动画效果的方法
  • 基于android的简单程序
  • 深入理解新发展理念
  • 完美世界打斗
  • js基础
  • 山西省国家税务局王旭斌局长
  • 进项税额转出影响所得税吗
  • 举报纳税电话
  • 什么叫税务协查
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设