Chinaunix首页 | 论坛 | 博客
  • 博客访问: 409154
  • 博文数量: 159
  • 博客积分: 372
  • 博客等级: 一等列兵
  • 技术积分: 1693
  • 用 户 组: 普通用户
  • 注册时间: 2012-01-13 17:05
个人简介

致力于图形处理和移动开发。

文章分类

全部博文(159)

文章存档

2014年(77)

2013年(67)

2012年(15)

我的朋友

分类: PHP

2014-08-28 10:54:09

PHP框架的原理

说到PHP框架,可能很多PHP新手会感到有些胆怯。其实,PHP框架也不是那么深不可测的,框架就是别人使用PHP基础只是为你写好了的东西,只是封装在一起;这就好比我们使用PHP的函数,函数都是已近写好了的,我们只要按照函数使用的规则,比如,为函数传递参数的个数、类型以及函数返回的值类型等。理解了PHP函数的这些使用规则,我们就可以大胆、放心的去使用了。同样道理,PHP框架也有自己的规则,比如项目文件夹的部署、控制器类的命名规则以及数据表的命名规则等。了解了PHP框架的使用规则我们就能去使用PHP框架提供的全部功能了。

PHP框架并不是那么高不可攀,每位PHP程序员都应该加入到PHP框架的学习和使用中来,毕竟一个人的精力是有限的,如何你每个项目都全部由自己开发的话,那么你将浪费许多时间用在做相同的事情上。比方说,几乎每个项目都有数据的验证,那么你要为每个项目都要编写数据验证的PHP代码,而如果你使用PHP框架的话,这些都是封装了可以直接拿来使用的。

PHP框架也是使用PHP的基本知识来写的,没有必要看到框架二字就退缩了。对PHP基础知识非常熟悉的话,学习PHP框架是件轻松而快乐的事情。框架的使用会给你的项目节省50%左右的项目周期时间。

PHP框架的优点

1、PHP框架使代码更安全。一般PHP框架都采用单入口文件的模式,我们只要在入口文件进行验证即达到了所有文件验证的目的。

2、PHP框架缩短了项目开发周期,这可能是最大的优点了。

3、使用PHP框架架构项目思路清晰、结构明显。

PHP框架选择标准

在如此多的PHP MVC框架中,怎样去选择一款各方面都不错的框架学习并在项目中使用它?这是每一个PHPer都会面临的问题。比如当前比较流行的框架有:ZendFrameWork、ThinkPHP(国产)、CodeIgniter、YII等。每个人心目中的好坏标准不一样,再加上有的人习惯了某框架,想让他再接受其优秀的框架也是比较难的。所以,我们应该怎样去判断一款框架是否属于自己,变得非常的突出。现在我给出几个标准:

  • 性能
    所谓的性能指的是IO、CPU占用、PHP解析时间等几个指标。当前的服务器最突出的问题是CPU已经非常快了,内存已经够大够便宜了,唯独硬盘IO不够高。这就像一个一个智商150与一个智商80的人做1+1一样,根本体现不出智商的优越性。
  • 全栈式
    虽然我个人不太赞成PHP框架过度全栈式。但是,如果能把全栈式做到优雅简洁,我也是非常兴奋的。什么是全栈式?就是一款框架包含了WEB开发中所有的东西。比如:上传、分页、导入导出、邮件、日志、错误、二维码、RSS、RBAC等。这样的话,才能真正解决掉我们去自己实现的麻烦,节省我们的时间。也提高了代码的安全性移植性。
  • 学习难度是否陡峭
    毕竟我们要运用到实际的项目中。以后陆续还会添加更多的人进入项目开发中。如果,学习难度过于陡峭,势必会影响项目的进度和后期维护的成本。目前,我用过的框架中ThinkPHP做得还不错,文档还比较完整易懂。换作正在用的YII框架,简直是头痛。提供的文档实在是过于简单,示例不够丰富。而且,代码不够优雅。在某些设计上,过于面向对象,导致在PHP这种语言中操作起来不是特别顺手。
  • 框架社会是否活跃
    一个社区活跃与否,直接关系到这个框架的未来的命运。谁也不希望今天还牛逼的框架,就因为没有与时俱进,最终淹没在历史的长河中。自己又得花时间掌握新框架。比如:前几天MongoDB还是比较火的时候,当时几乎没有框架在DB层,即ORM实现这个数据库的接口。而项目中可能会考虑使用MongoDB。当时几个比较知名的且速度比较过得去的框架都没有支持。结果,还是咱们国产的ThinkPHP支持了。虽然,BUG可能有点多。至少,某种程度说明了一个活跃的社区是非常有必要的。
  • 框架使用的群体大小
    一款框架再牛逼,如果没有人使用。你学了也只能在自己的一亩三分地有所建树。出了这个圈,效果就不明显了。PHPer学习这个东西,主要还是为了能找一份高薪顺手的工作。如果,学了半天,结果却没有人用这个框架在项目中。那是相当悲催的。

本文来自爱程序网!

相关阅读

阅读(926) | 评论(0) | 转发(0) |
0

上一篇:10款鲜为人知的PHP框架

下一篇:没有了

给主人留下些什么吧!~~