聚合国内IT技术精华文章,分享IT技术精华,帮助IT从业人士成长

流行PHP框架整理

2014-12-20 20:40 浏览: 1206686 次 我要评论(0 条) 字号:

图虫之前是用Zend Framework开发的,全面用 Zend Framework重构那还是2008年的事情,期间一路跟着ZendFramework升级版本,从1.5一路跟到1.9,但是由于Zend Framework 2.0的差异太大,所以没有迁移到2.0。

转眼6年过去了,PHP世界发生了翻天覆地的变化,PHP 5.3以后引入的命名空间和trait和函数闭包等新特性,都彻底改变了框架的设计思路。PHP-FIG提出的PSR-0,PSR-4的策略,以及Packagist带来的包管理机制,极大地提升了PHP社区的活力。

新的PHP框架如雨后春笋般冒出来,尤其是Laravel这个号称给web艺术家设计的框架,简单看了几眼sample code,ORM的设计和我自己写的MyPDO如出一辙,大量的使用静态方法,避免不必要的对象实例化,它的代码风格简直深得我心。

但是Laravel和ZendFramework、django、rails一样,都是大而全的框架,框架内互相耦合了大量组件。对于一些轻量的API项目,其实我们根本用不着那些复杂的功能。于是,又有很多类似于express、web.py、flask、bottle的微框架应运而生。

到底用什么框架呢?简单整理对比一下几个流行框架:

 

1. 微框架——把文件層先脫離出來就是大一步了

Slim, microMVC, flight, Silex等,基本只做路由绑定的工作,其他功能一概没有。

Slim相对比较流行,flight和Silex也还不错。这类项目的开发一般不很活跃,因为实在没什么事情可以做。

这类微框架适合做一些功能简单的小项目,代码量少,能够达到不错的性能。

 

2. 功能齊全大庫系——把輪子通通拿來給本大爺用

Yii, CI, Cake, ThinkPHP,早期框架基本都属于这一类,在没有包管理的时代,引入独立组件是一个很麻烦的事情,所以这些框架一股脑把路由、视图、ORM、Acl、Pagination、Log等等统统自己做了一遍。

 

3. 安裝擴展系——不能高級一點嗎?

Laravel, ZF, Symfony,使用了大量PHP的高级特性。能体验到动态语言的强大魅力。

 

4. 用C写的PHP扩展系——速度最實際

Yaf, Phalcon

Phalcon 由于是一帮老外写的,开发者众多,社区完善,因此功能比较完善,各方面支持比较好。

Yaf毕竟是鸟哥一人在维护,而且鸟哥也太忙了,Yaf功能有限是必然的。

Phalcon/Yaf 适合做对性能要求很高的API项目。

 

参考链接

http://www.zhihu.com/question/19558755/answer/24228194



网友评论已有0条评论, 我也要评论

发表评论

*

* (保密)

Ctrl+Enter 快捷回复