位置: 编程技术 - 正文

简单理解PHP的面向对象编程方式(php是面向过程还是面向对象)

编辑:rootadmin

推荐整理分享简单理解PHP的面向对象编程方式(php是面向过程还是面向对象),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php面经,简单理解php的面试问题,php常见面试,php常见面试,php是面向过程还是面向对象,php是面向什么的语言,简单理解php的面试问题,简单理解php的面试问题,内容如对您有帮助,希望把文章链接给更多的朋友!

与大多数可以面向对象的编程语言不一样, PHP 是同时支持面向过程和面向对象的编程方式, PHP 开发者可以在面向过程和面向对象二者中自由选择其一或是混合使用,不过由于在 PHP5 之前的版本中, PHP 主要还是面向过程的编程语言,因此大多时候 PHP 开发者应该还是选择面向过程的方式进行开发,事实上, Kayo 认为即使一个 PHP 开发者完全不使用面向对象,他也能开发出很出色的 PHP 程序,我们可以想象, Web 页面的解析本身就很过程化,在 HTML 中嵌入面向过程处理的代码是非常自然的手段,因此不能说面向对象是一种比面向过程更加优秀的编程方式,只是另一种编程选择,当然这里说的是 PHP 中的情况。

对于 PHP 中面向过程和面向对象各自的优缺点,相信在网上稍查一下就会很清楚了,面向过程开发周期短,发布快,效率较高,面向对象开发周期长,效率较低但易于维护,改进,扩展和开发 API 。显然易见,我们很难说哪一个方式会更优秀,与其争论哪一种编程方式更优秀,不如尽量发挥出两种编程方式各自的优势。

回到 PHP 的面向对象编程,在使用面向对象的过程中还是很容易就感受到它的优势,最明显的地方是代码功能更加清晰,数据处理,用户登陆,内容呈现等各写成一个类,在页面中只需包含这些类、实例化对象,然后再用简洁的语句应用对象就行,这与面向过程中把数据处理,用户登陆,还有内容等部分写在一起相比,前者的编程思路肯定更加清晰和易于理解,相信团队开发中应该更为偏向于面向对象编程。

下面举一个简单的例子说明一下面向过程和面向对象两种方式各自的优缺点

简单理解PHP的面向对象编程方式(php是面向过程还是面向对象)

在处理表单或接受 url 参数时,为了防止 SQL 注入等问题, PHP 开发者常常需要过滤字符串。

在面向过程的方式中,我们会在需要过滤字符串的语句中调用各种过滤字符串的库函数或自定义函数,这样下来,页面中就会出现很多不同的过滤函数甚至还有复杂的正则表达式,即使在页面中写了足够的注释难免还是比较混乱,下面看看面向对象的处理方式。

首先是定义了一个简单的处理字符串的类,把各种复杂的字符串处理写成方法(关于 PHP 面向对象的知识可以 Google ,本文不另外叙述。)

然后在需要过滤字符串的页面中实例化该类

接着在过滤或判断字符串时调用类中定义好的方法,于是页面中会出现一些调用方法的语句。

在上面的例子中,我们可以看到,在面向对象处理字符串之前,我们必须定义一个类,然后再在需要的页面中实例化这个类并调用这个类中的方法,这里看来,面向对象的效率相比面向过程是低了,而且也很麻烦,不过这样的优势也很明显,实际处理或判断字符串的语句都写在类的内部,在调用方法的页面并不会出现各种复杂的自定义函数和诸如正则表达式这样复杂的语句,页面的结构乃至整个网站的结构更加清晰了,并且在写好一个类后,日后进行 PHP 开发时都可以再使用这个类,从长远来看效率反而高了。因此一直都在进行 PHP 面向过程编程的开发者不妨换种思路,试试面向对象。

PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 标签的函数 strip_tags定义和用法strip_tags()函数剥去字符串中的HTML、XML以及PHP的标签。注释:该函数始终会剥离HTML注释。这点无法通过allow参数改变。注释:该函数是

简单解析PHP程序的运行流程 一直想了解Web编程的技术。PHP是进行Web编程重要的一种语言,书上总是说,PHP是用于服务器端的编程语言。但是,实在不能理解它是怎么用于服务器端

laravel学习教程之存取器 前言Laravel是一个简单优雅的PHPWeb开发框架,可以将开发者从意大利面条式的代码中解放出来,通过简单、高雅、表达式语法开发出很棒的Web应用,那下

标签: php是面向过程还是面向对象

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

上一篇:PHP中常用的数组操作方法笔记整理(php中常用的数组是什么)

下一篇:PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 标签的函数(铡什么意思)

  • 房地产开发企业资质等级有几个
  • 公司合作分红
  • 怎么从税控系统导出明细
  • 税控系统的清单
  • 实收资本能是现金流出吗
  • 发票管理中的四流一致是指什么一致
  • 总分机构企业所得税汇算清缴
  • 个体工商户所得税税率表
  • 无法支付的应付账款转销
  • 研发过程中材料费计入
  • 买一手房需要交哪些税费
  • 蓝字发票作废流程视频
  • 纳税评估怎么办
  • 税法关于劳务费用的规定
  • 汇总缴纳增值税如何申报
  • 高危行业企业探索实行什么制度
  • 固定资产怎么填报
  • 环保设备的折旧计入
  • 电费的税费计入什么会计科目
  • 期权的行权收益
  • 个人补缴公积金需要什么手续
  • 中国的农业成本为什么高
  • 计算应纳税所得额时可以扣除的项目有
  • 斐讯路由器地址在哪里看
  • 利润是如何转化成平均利润的
  • 印花税是按开票金额还是收入
  • 成本核算怎么做账
  • Win10 Build 18363.1350/17763.1728累积更新补丁KB4598298正式推送
  • mac怎么恢复出厂值
  • 全年一次性奖金税收计算器
  • php字符串函数大全
  • php字符串赋值
  • AriaNg Native 1.2.4 Aria2图形界面下载工具 中文免费版 32/64位
  • php数组函数题目
  • 以物易物双方做什么处理
  • 计提本月固定资产折旧会计科目
  • 盆栽玉树的养殖方法
  • PHP:imagepsloadfont()的用法_GD库图像处理函数
  • 土地增值税属于财产税吗
  • php解析json对象
  • 委托收款拒收会退回吗
  • 备用金支出没有发票怎么办
  • 现金及现金等价物净增加额为负数
  • thinkphp框架入门
  • iis安装php环境
  • 住宿费电子发票没有章
  • vue数据加载完成显示页面过渡动画
  • 2019年新会计制度改革
  • 分公司以总公司名义
  • python中insert函数怎么用
  • 禁止DedeCMS未审核文档支持动态浏览方法
  • 进口关税如何交
  • 中小企业发展专项资金亮点 免申即享
  • 无形资产摊销是什么会计科目
  • sql server 2008语句大全
  • 信用卡刷卡手续费是谁收取的
  • 什么情况下交劳务税
  • 什么公司转让需要交税
  • 会计凭证装订时间法律规定
  • 社保的会计核算方法
  • MySQL下载安装步骤详解
  • prometheus operator
  • centos如何查询版本号
  • 怎样设置禁
  • ubuntu如何下载
  • 内存故障会不断重启么
  • 电脑任务栏中没有网络图标
  • reald是什么格式
  • Linux中通过Socket文件描述符寻找连接状态介绍
  • win10 rs3
  • unity3d ide
  • js canvas绘制图片
  • windows清除远程登录记录
  • linux sed awk区别
  • input输入@弹出框
  • 细说javascript
  • jquery设置cookie值
  • 国家税务总局关于个人所得税有关政策问题的通知
  • 保障性住房是否可以买卖
  • 绿化养护的增值税是多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设