2011年选择合适自己的PHP框架

2011年选择合适自己的PHP框架





PHP框架千千万,如何选择一个合适的PHP框架不是一个简单的问题,尤其是对PHP编程经验还不足的人而言。一般而言,选择一个框架应该查看如下几方面的内容(这也适用于选择其它技术):
1. 功能:功能越多当然越好。但这也不是绝对的,因为功能多意味着框架的庞大,学习成本的提高。
2. 文档:文档的重要程度丝毫不下于功能,甚至更甚于功能。框架代表的是一套协议,有点类似一种新语言。要让大家掌握框架,就需要非常详尽的文档。
3. 社区:框架用的人越多,它的生命力就越强,也就越可靠。工作招聘时框架技能就可以成为一个得分点。

根据上述方面,我们可以只考虑以下框架。其它的框架由于太新或者用户群太小,目前不具备使用价值,除非你愿意做小白鼠。

CakePHP:在它提供的范围内,可以快速成型。它也有很大的用户群,主要集中在美国。缺点是框架约束较多,不够灵活,而且框架本身的性能开销较大。

CodeIgniter:功能少,但文档齐全,很容易上手。有很庞大的社区。初学者可以试用,但不建议在中大型项目里使用,因为它缺少很多其它框架已经提供的功能(虽然它有很多用户提供的扩展,但它们的质量很难得到保证)。

Kohana:功能多,文档一般。有一些很好的创意。用户规模一般。可以尝试。

Symfony:功能多,文档也齐全,作者不仅是个好程序员,也是个好作者,这非常难得。Symfony 2.0也快要正式发布了,它有很多精彩的创意,是个学习的好材料。Symfony的主要用户群在欧洲。某些代码有过度设计的嫌疑。上手有点困难。

ThinkPHP:很实用的框架。有很好的中文文档和社区。可以考虑采用。缺点是过于注重实用,在命名和实现上有点走极端。另外,基本没有国外用户。

Yii:功能多,文档也齐全。它有一套易扩展的快速成型工具(叫Gii),可以帮助初学者迅速实现一个应用的基本框架。有很大的用户群,主要集中在俄罗斯,中国和美国。一些人不喜欢其核心代码的风格。作者是中国人。

Zend:功能全,文档多但不够细。有很大的用户群。由Zend公司开发并提供商业支持。很多人因为Zend的牌子而选择它。在实现上,有过度设计的嫌疑。另外,它缺少ORM。


这些框架按照用户群大小排名,大致如下:
1. CodeIgniter ? Zend
2. Yii > Symfony > CakePHP
3. ThinkPHP > Kohana

关于具体决定采用哪个框架,建议用每一个框架实现两个页面:1. 数据插入 2. 数据列表。
然后看看过程是否容易,完成的代码是否符合你的审美观。
如果你这么做了,相信你一定能找到属于自己的框架。

作者: so_brave   发布时间: 2011-05-12

学了框架,虽然面试要懂框架 ,,但去的公司没一个用的,,都是写瀑布。。

作者: hbeimf   发布时间: 2011-05-13

不想学习框架。 真不想。

作者: maochanglu   发布时间: 2011-05-13