CakePHP vs CodeIgniter vs Yii

2010-09-25 22:25 chris
PHP的几个MVC框架,都是粗略看了一下,主要是想选一个用。最想要的功能是Controller方面的,要有优雅灵活支持正则的URL Routing,还有支持配置middleware/filter以利于横切面处理。View方面PHP本来也就够用。Model方面这些框架应该都不满足我的要求,也就没看。

CakePHP:
基本就是参照RoR设计。我并不是很喜欢,URL Routing不灵活不简单。MVC三者太过紧耦合。内置支持theme。middlware/filter的支持可以勉强通过beforeFilter、beforeRender、afterFilter几个callback实现。

Yii:
功能不少,一个华人牵头开发的。内置支持theme。middlware/filter的支持好一些,有个filter列表。

CI:
比较轻量级,自己的架构非常简单,Model是可选的,内置的功能比较少。URL Routing还比较灵活,Hook可以用来实现不少东西。CI有个很大的特色是它的Core、Library、Helper都是可以在Application中重写或者扩展的,这对定制CI框架是很有好处的,比如移植CI到云计算平台。

这三个框架的Controller设计都是基于OO的,我还是喜欢WSGI/Django方式的... 目前先用下CI看看。
基本评价是这三个框架都比不上Django。
所有回复