侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

十大使用PHP框架的理由

php  /  管理员 发布于 7年前   141

PHP框架提供了一个用以构建web应用的基本框架,从而简化了用PHP编写web应用程序的流程。换言之,PHP框架有助于促进快速应用开发( RAD ),不但节省开发时间、有助于建立更稳定的应用,而且减少了重复编码的开发。

1.可以更好的组织代码和文件夹。

不会因为你新建了一个/inc的文件夹,然后在里面写function.php文件,就能说明你的代码有组织了。但是当你使用一个PHP框架的时候,框架本身已经有一定的文件夹结构,你需要遵循框架的一些标准,这样就可以保证你始终用一定的方式来组织你的代码。

不幸的是,一些命名行冠军仍然在使用着vi,这可能是一个挑战。你工作的时候将会遇到很多体积很小的文件,当你使用框架了,你就可以很方便的使用现代化的编辑器或IDE来浏览你的代码结构,这样你就能很快的找到你所需要的文件。

2.公共代码和类库

PHP是一门伟大的web开发语言,它提供了无数的工具和类库。但是当你试图单独建立一个网站的时候,你要么自己写代码,要么使用第三方的代码。

所有优秀的php框架都会提供一些类库和辅助函数给你,它们能给你提供以下帮助:表单验证、输入输出的数据过滤、数据库抽象、Session和cookie处理、Email、日历和分页等,这样的例子不胜枚举。更何况,还有一些社区提供的大量的插件,你可以将它添加到你的框架中。

3.mvc模式

着名的mvc模式要追溯到1979年,是一个叫哈维的挪威计算机科学家首次提出来的。

PHP工作起来本身就像是一个模板引擎。但是,如果你很不负责任的使用它,这样将会使你的代码很丑陋,将会使代码难以维护。

Mvc模式:

模型:通常代表着你的数据结构和数据库的接口;

视图:包含了页面模板和输出;

控制器:处理页面的请求。

这种分离是代码更整洁,更容易维护。

4.安全

在PHP中,可能你已经想过很多办法对输入和输出进行过滤了,以防止您的网站被攻击。手动的处理这些过滤将会很累,当你使用了框架以后,你就可以忘掉那些累了。

对于一个框架,大部分过滤工作可以帮您自动完成。例如codeigniter框架:

通过数据库的任何值将会被过滤这样防止sql注入性攻击。

所有html可以自动生成,如表单辅助函数和url辅助函数可以对输出自动过滤所有用户输入的数据都可以进行过滤防止xss攻击。

想要加密cookie只需要改变一个配置选项就可以了。

5.使用少的代码,提高开发速度

所有的PHP框架都会有一个学习曲线,但是一点你越过了谷峰,你就会享受快速开发带来的乐趣了。

使用框架意味着你写更少的代码,这就意味着更少的时间花在打字上面。你不必为每个项目去查找第三方的类库,因为框架已经帮你提供了很多类库了。

此外,因为你的代码已经以一种方式默认的组织起来了,这样你就能更快的发现错误和维护代码,对你现在的代码进行更改。

6.社区支持

所有流行的PHP框架在背后都有一个很活跃的社区。你可以和其他开发人员在寻求帮助、讨论或反馈。

7.增强就业竞争力

不知道你最近有没有看过,一些公司的职位要求都需要有框架的使用经验,作为一个web开发人员拥有PHP框架的的使用经验将会增强就业竞争力。

8.性能

反对使用PHP框架的大部分人都会说框架降低了PHP的性能。

不过首先你应该明白,开发的费用远远高于服务器硬件的价格。节省开发和维护的时间上的钱有可能超过任何额外需要花费在服务器上面的钱。

把上面说的这些抛到一边去,你实际上也可以使用PHP框架获得性能上的优势。框架本身带有一些工具,它们能帮你做缓存、测试和分析等等。

现代的一些框架也都是动态的加载它所需要的一些代码的。

9.适合团队

PHP框架可以为帮你创建一个合适的环境,提供良好的团队合作方式。你可以让设计师工作在视图层上面,让数据库工程师工作在模型层上面,让聪明的程序员反复的使用类库和插件。你也可以让别人建立单元测试,因为PHP框架本身带有很多工具。

10.很有趣

这点实际上可能是所有理由当中最重要的一点了。当你的工作充满乐趣的时候,你的工作就会更加高效。如果你一直使用老式的PHP编码多年,或者对它已经非常厌倦了。开始使用框架将会给你增加一些士气,就像一个新的玩具一样,并且你用框架同样可以做很多很酷的事情。至少我当初第一次使用框架的时候就是这种感觉。我相信很多web开发人员都会有类似的经历。

结论:

使用PHP框架可能不是你的最佳选择,但是,你应该使用对web世界保持开发的态度,不断从网络中新的技术新的发展来学习知识。今天框架很流行很火爆,我们仍然不知道PHP框架明天将会是怎样的,但我想要说的是,PHP框架绝对是值得探讨的。

希望通过本文介绍的十大使用PHP框架的理由,对大家有所启发,能给大家带来帮助。

您可能感兴趣的文章:

  • 解析php框架codeigniter中如何使用框架的session
  • 国外十大最流行的PHP框架排名
  • ThinkPHP框架实现session跨域问题的解决方法
  • ThinkPHP框架任意代码执行漏洞的利用及其修复方法
  • PHP框架Swoole定时器Timer特性分析
  • Yii 快速,安全,专业的PHP框架
  • 常用PHP框架功能对照表
  • 分享最受欢迎的5款PHP框架
  • 主流PHP框架的优缺点对比分析
  • PHP框架Laravel的小技巧两则
  • Nginx中运行PHP框架Laravel的配置文件分享
  • 使用Thinkphp框架开发移动端接口


  • 上一条:
    用php代码限制国内IP访问我们网站
    下一条:
    PHP弹出对话框技巧详细解读
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • 用Time Warden监控PHP中的代码处理时间(0个评论)
    • 在PHP中使用array_pop + yield实现读取超大型目录功能示例(0个评论)
    • Property Hooks RFC在PHP 8.4中越来越接近现实(0个评论)
    • 近期文章
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-10
    • 2016-11
    • 2017-06
    • 2017-07
    • 2017-08
    • 2017-09
    • 2017-11
    • 2017-12
    • 2018-01
    • 2018-02
    • 2018-03
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2020-07
    • 2020-09
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-05
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-02
    • 2022-05
    • 2022-06
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-10
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-04
    • 2023-05
    • 2023-06
    • 2023-07
    • 2023-08
    • 2023-09
    • 2023-10
    • 2023-11
    • 2023-12
    • 2024-01
    • 2024-02
    • 2024-03
    • 2024-04
    • 2024-05
    • 2024-06
    • 2024-07
    • 2024-09
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客