如何深入了解一个PHP框架

用过 symfony,phalcon 。现在刚用codeigniter,对PHP框架也有一些了解了。但总感觉还停留在很浅的使用水平,如何深入了解这些框架,或者自己写一个框架?

阅读 7.4k
9 个回答

一套框架就是一套规范,无论他里面用的什么组件、插件、工具,这都是“术”的层面,而数据如何流转如何转换才是框架“道”的层面,下载例子、尝试自己编写例子,配置好你的 IDE,X-Debug 等,打断点弄明白他是怎样一个流程,推测作者如何思考、他试图解决何种问题等。

框架本就是:顺我者昌,逆我者嫖娼。找到如何顺应作者的思路,他能适应的问题的边界,你也就研究透了。

没有什么比读源代码更好。

最好你在不使用框架上完成两个不同类型项目,然后再反过来看框架你会发现:
框架通常解决了项目开发中遇到的与业务逻辑无关的问题。

看起来很简单的一句话,但是实际上很多人都不理解它,虽然很多人都听说过使用框架是为了让开发者把更多的精力用在业务逻辑而不是堆砌轮子。

在一个项目中,有业务逻辑(如下单)和非业务逻辑(如数据存储),在具体业务逻辑的各个环节中有可变环节(如需要2个不同的用户审核,也许2个也许4个)和不可变环节(审核步骤是必须的),等等问题,这些不但是选择框架的依据,也是扩展框架的依据。

有点可意会不可言传的意思,不知道你能理解不。

其实你这个想法并不好,你应该深入了解php,框架可能相对于原生的php稍微好用一点,但是框架的变化速度基本上都比你学习速度快。所以与其深入了解框架,不如深入的学习php,多了解基础的东西,这样以后学习什么框架都快。

多看代码,没有捷径

先从入口文件开始看,研究框架是如何运行的。

  1. 框架是如何加载全局配置文件的

  2. 框架是如何实现路由的

  3. 框架是封装数据库工厂的

看框架源码。

在看框架源码中经常看到依赖注入,控制反转,项目使用的yaf,还真看不懂源码,只能顺鸟哥的意思一步一步来了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题