PHP框架乱象

接触PHP有六七个年头,像各种语言开发利弊之争一样,框架之争在开发人员也是如此,没有最好只有更好。每个开发人员心中都一个理想中的框架,造成了每个工程师特别喜欢发明这个轮子,PHPer甚之!


那会我刚学PHP,是没有目前市面上这么多框架的,当时印象中有zend framework/cakePHP一两种框架,实习的公司是自研的框架,那个时候开源软件也没有那么流行,觉得能自研框架好牛逼,心里莫名很崇拜。后来有幸接触到Yii,接下来的几年,基本站在Yii的阵营里面,当然这期间也学过不少别的框架:ThinkPHP/Laravel/Slime/CodeIgniter/Phalcon/Yaf/Swoole framework等,
大部分都在项目中用过,比较过这些框架的优缺点:有的重视速度,有的重视规范,有的重视简单明了,有的重视开发效率;这些框架有个很大的共同点:侧重点不一样,但核心理念相互抄来抄去。
当然如何选择合适自己的框架,也是一项必备的能力,判断一个框架是否优秀,我的标准如下:

  1. 单一入口,路由灵活
  2. 代码遵循PSR规范(PSR2和PSR4)
  3. 性能不能太差,跑hello world要在50ms内
  4. 高效好用的model层
  5. di注入;灵活的扩展机制
  6. 支持名称空间和composer包管理
  7. 社区活跃,bug和issuse及时解决

上面这些特性要求不高,laravel和yii/phalcon都符合,建议PHPer少花时间造框架轮子,因为各种框架极大的约束了PHP代码共享,也大大分散了PHP在各个业务领域的代码积累,还好composer已经是PHP界包管理的事实标准,基于composer的生态圈更值得大家去完善,哪天PHP社区的包管理像node.js方便,这个社区会更加有活力!