如果上一下sf.net,你会发现,PHP开发框架不下于400多种。对于一个初级开发者,选择哪一种PHP开发框架,实是一个头痛的问题。
作为PHP初学者,学会一种PHP开发框架,不仅有利于提高编程水平,同时,也是对自己职业技能的一个大的提高。
但是,对初学者而言,学什么?可是一个最大的难题。并且,往往陷入各种各样的误区之中。
所以,我们有必要谈一下有关PHP框架选择中的误区。
误区之一:简单的就是好的。因为简单易学,所以,上手也快。
实际上,我们不能保证你整天做的都是个人网站。或者是只有几个页面的网站。一旦遇到大型应用,小的框架往往是无能为力的。比如,有人选择kiwiphp,说一个最明显的缺陷:该框架到目前仍存在跨站脚本攻击漏洞。
误区之二:流行的就是好的。比如,现在流行ROR方式,注解行敏捷开发模式,但并不是所有的应用都适合这些模式,这些框架充其量最多只能适应中型的网站的开发。甚至有可能,为了适应开发的需求,核心类库都需要改写。象CAKE,是照抄ROR模式的典型。而CI,则是敏捷开发模式的典型。我们可以看一下CI的LOGGER,日志类,如果你的项目中有CRONS,那么,这个日志类就不够用了。因为,它的输出模式定死了,就需要改写。如果你的项目中存在象BOM核销,或其它复杂的企业应用模块,很可能你需要邮件日志,短信日志,它是不能提供的。
误区之三:不知框架能够适用于哪一类工程。我曾对一些人说过,CI对于大型门户类网站,它就只能算是一个玩具。没想到,这话居然超出了倔们的想象。它们认为,CI就是一具优秀的框架,一个经典。
误区之四:相信一些网站中的评论,评分。或用户的评比。实质上,这些也不是均可以相信的。全世界都有初学者,你无法了解参与评分的是哪些人。虽说,目前CI,CAKE评分相当的高。但并不能说明,它们就是最好的。
误区之五:初生之犊不怕虎,这些人虽然很少,但也不乏这样的典型。对所有框架均不满意,而另行重写自己的。我们认为,你重写了自己用,还说得过去。如果重写了,直接开源,那么,很可能对初学者造成误导。比如,国内的kiwiphp,连基本的服务端器凋数据验证还没有加上,XSS攻击根本就无任何屏蔽,框架就发布了。这也就是说,根本不知框架中究竟要提供哪些东西。当然,我们并不反对任何人再开发一个PHP的开发框架,但是,前提是,开发之前,你确实弄通了一些经典的框架,并且,你确实组织开发,而不是参与开发过大型的网站。没有这样的积累,你是无法能够工发出优秀的PHP开发框架的
误区之六:获奖的就是好的。PRADO获奖了,FLEA也获奖了。PRADO做企业业应用,效率如何?无人能知。FLEA中,HEX色彩转RGB这个函数问题,早在一年多之前,我就提出过,但至今未见更新。当然,代码的成熟度肯定是随版本的更新而提高的,但版本更新的速度,以及用户量的多少,均是相关因素。CI,FLEA均是团队开发,而这种团队开发,代码的把关,就是一个很大的问题。CI中有相当成熟的代码,但也有相当初学者级的代码,这里就不多讲了。
。
最后向大家推荐一些值得学习的PHP开发框架:
zend framework : 作为PHP官方的开发框架,有很多的优秀的方面值得学习。当然,由于它并不是绝对优秀的,并且,开发中缺少统筹,从而不能顾及大从的需求,却含盖了很多不常用的需求。所以,此框架的最大缺陷就是,由此带来的学习与培训成本。
symfony : 此框架的立足点是大型网站,可以说是,PHP开发框架中的最优秀的经典。缺陷则是,耦合不够松散,不能支持敏捷开发。但无论怎么说,它可以说是目前所有框架中最成熟的一个。并有维基百科这样的成功实例。
prado : 这也是一个由国人主打开发的大型开发框架。此框架适合于企业应用的开发。并不适用于网站。主要是,其完全引入了.net的架构模式。
ezComponent :此框架最大的特点就是完全的松耦合,完全的DIY架构。这对于理解一个PHP网站应用需要哪些核心,具体编码流程的人来讲,是一个不错的选择,但对于初学者,仍不能写出安全的网站。相比而言,初学者如果使用CI,写出的网站不会存在安全问题,但用它,就不能保证了。如果初学者用zend,结果也是一样。
此外,也有同行推荐YII,由于我对YII不了解,所以,无法推荐。只此带过,供大家参考。如果你们发现了,有比SYMFONY更好的,别忘了推荐维我。
分享到:
相关推荐
关于PHP开发框架.pdf
php开发框架从零开始 php开发框架从零开始php开发框架从零开始php开发框架从零开始
PHP 教程 一个高性能的PHP框架 php快速开发框架 免费开源的轻量级、高性能PHP框架
PHP敏捷开发框架-CodeIgniter,快速web应用开发详解
PHP微信开发框架,高效开发微信公众号应用。简洁而又轻量
php快速轻量级开发框架
PHP敏捷开发CodeIgniter框架
PHP开发框架底层 该结构包含了 smarty mysql page 类,属于一个系统开发底层。 包含了后台管理,可实现无限级别控制,已经包含登录退出管理页面 数据库可以实现新闻无限分类扩展,系统配置无限增加字段扩展 试...
教程名称:PHP开发框架源代码汇总课程目录:【】CodeIgniter 2.1.2【】Difeye 1.1.2【】EaglePHP 2.0【】JHPHP快速开发框架 2.0 beta【】kohana 3.2.0【】MyQEE(麦琪) 2.0.1【】PHPDevShell 3.1.3【】Smarty 3.1.12...
快速开发后台框架,自动生成html,界面美观大方。
php开发框架kohana3.2 集成smarty。
PHP 的 无框架 的 MVC 开发方案
一个简单的PHP开发框架
erPhp框架是一个轻量级的微型的PHP开发框架,其支持多语言,权限控制,功能模块化,多数据库连接,及页面缓存和编译缓存,其模板引擎是使用流行的smarty做为模板引擎,前端JS比较自由默认使用jquery,支持多种session存储...
CodeIgniter 是一个小巧但功能强大的 PHP 框架,作为一个简单而“优雅”的工具包,它可以为 PHP 程序员建立功能完善的 Web 应用程序
分享一款基于ThinkPHP5.0框架开发的自适应WAP手机端响应式界面博客系统PHP源码 查看更多关于 博客系统PHP源码 的文章 ,前端界面采用BootStrap框架设计,使得博客系统界面能自适应区分PC端和WAP手机端界面,针对不同...
微信开发php+mvc框架
微信发展迅速,微信公众平台官方使用不便,因此用php开发这个框架,封装了微信的功能。
yii框架yii框架yii框架yii框架yii框架yii框架yii框架yii框架yii框架yii框架yii框架yii框架yii框架yii框架yii框架yii框架yii框架yii框架
phpWechat 是由一个具有多年行业开发经验的前端 UI 设计师、PHP开发工程师组成的团队设计、研发的一套的微信公众平台管理系统,您可以瞬间完成一个公共号或者PC站或者两者皆有的平台搭建。 phpWeChat 微信+网站开发...