我在TOM工作期间,曾考虑编制一个PHP框架,用于提高PHP开发效率。后来去掌通公司工作后,这个思路得以初步实现,并具体地运用在“NEC Dream”这个手机服务网站中。
随后,我便长时间地脱离PHP代码编写第一线。在随后的日子里,我有时像个品酒师,评测别人写的程序;有时候则像个小学生,从别人的程序中学习新方法、新思路、新观点。
最近,我打算动手用PHP做些东西,需要有一套省心的PHP框架。
显然,我不打算从头开始写起,写一套自己的PHP框架;我也不打算借用自己过去的一些程序,因为那些程序现在看来有各种不足。
因此,我打算找一个开源的PHP框架,或者借鉴某一成功PHP程序的框架,在此基础上开发自己需要的PHP系统。
照套某一成功PHP程序(例如
Serendipity等)的框架是比较困难的。因为这些PHP程序的需求都是非常特定的,其框架欠缺足够的灵活性,不一定适合我的需要。
因此,比较可行的方法还是找一个现成的PHP框架。
这个PHP框架至少需要有如下几个鲜明特点:性能出色、使用模版引擎、支持Ajax、架构清晰、使用简单、较为完美的多编码支持等等。
我曾在《
"Ruby on Rails"技术观后感 (2)》一文中列出了去年5个主要的"PHP on Rails"技术。1年后再看看文中提到的这几个PHP框架,Biscuit、TaniPHP的开发目前似乎陷于停滞状态,似乎只有PHP on TRAX、CakePHP、Symfony这三个还可以考虑。其中,CakePHP、Symfony受到的追捧明显高于别的框架。在明年第一季度,将各有一本分别针对这2个PHP框架的书出版。
1
到底哪一个PHP框架对我最合适呢?
2006年3月,Dennis Pallett写了一篇文字《
Taking a look at ten different PHP frameworks》(瞅瞅10个不同的PHP框架)。文中对10个PHP框架作了比较,并附了图表分析和个人评价,有相当的参考价值。Dennis认为,CakePHP没有明显的缺点;Symfony融合了好些别的开源项目,功能强大,但好些任务(例如分页)处理起来比较复杂;Seagull是另外一个功能强大的PHP框架,但欠缺官方的Ajax支持……
Fabien Potencier是CakePHP的爱好者。2006年5月,他写了一篇文字《
Rails-inspired PHP frameworks》(源于Rails的PHP框架),对主流的一些“PHP on Rails”框架作了比较,并对每个框架都有他个人的点评,同样具有相当的参考价值。在他看来,CakePHP虽然没有官方的国际化支持,也没有发挥PHP5的全部潜力,但相当简单易用;Symfony功能过于强大,而且结构过于复杂;PHP on Trax特点不鲜明,基本上只是照本宣科复制Ruby on Rails的概念而已……
CodeScripts网站的“
PHP Framework”网页提供了对各种PHP框架的打分。从中可以看出,CakePHP和Symfony分别得到6.6和6.5的高分,而且二者受到众多读者的关注,分别有172和103个读者对其打分。
2
最终,我认为:CakePHP最符合我的需要。需要提醒的一点是:符合我目前胃口的东东不一定适合你。
[注1] 具体出版信息可从Amazon.com上查到。
[注2] 此处打分统计时间截止于2006-10-30 18:14:25。
最新评论