读PHP框架源码,从哪入手

刚入门没多久,使用的是CI框架,后来一次去面试,和面试官聊了会。结果反正是GG了。

但是,聊天过程中我问他像我们这样的新手在刚入门的时候推不推荐使用框架来开发项目。“一般中小型公司对于快速开发都会用到,但是在熟悉框架之后还一定要去读框架的源码”,他说道。

最后他建议我目前你刚入门,在熟练用法之后有两个方向可以选择,第一就是去读框架源码、第二就是mysql优化。

请请问下各位前辈,如果要去学习这个框架底层是怎么写的,应该从框架的哪里开始着手学习呢,我想有条理的学习。我目前准备先学习CI框架,因为对于新手比较简单。

阅读 10.6k
9 个回答

两种方法
第一.跟着入口文件读,执行到哪里你看得到哪里
优点:清楚的了解了整个框架的执行过程,加载了哪些文件,调用了哪些方法,数据是怎么样的,适用与新手(指对框架逻辑概念基本不了解的同学)
缺点:一些文件在你读之前你可能根本搞不清他的用途,等你读完才发现这玩意对你理解框架根本没有帮助,耗时比较长,通读框架比较费脑内存。。。比如我通读完一份源码肯定会想:这尼玛根本记不住,明天早上再开机就都忘得差不多了。。。。。

第二.把框架分模块看完,根据入口文件配合网上已经有的教程之类的走一遍大概的流程,然后直接看功能模块:路由、数据库驱动、NOSQL驱动、部分常用类库、日志处理等
优点:耗时短,目的性强,适用于看过其他框架或源码但是对目标框架并不了解的同学
缺点:需要一点经验。。。。。。

框架的话从init.php(框架初始化文件)开始看,边调试便修改边看效果,我现在就是这么干的。。

  1. mysql怎么封装的。
  2. 缓存怎么封装的。
  3. 路由怎么实现的。
  4. MVC怎么实现的。
  5. 图像处理类等等。。

thinkphp吧,网上有一套讲此架构视频,注意不是使用方法,是分析源代码得。

一般的php框架都是使用了mvc这种架构,然而每种框架实现这种架构的又会使用好多不同的设计模式,学习框架就要着重去学他的设计模式,能真正的去领悟到,其实php什么语法的什么的 可研究性不大,各种怪癖的语法 不要过于去陷入。正如网上流传所说,语言是无关的。 最后回答你的问题:如何学习框架?答案只有一个 多去看别人写的基于这个框架的程序,多自己写,这些没什么捷径可以走。要安下心来,把你的ci吃透,在学其他的框架 就会轻松多了

从 index.php

现在的PHP框架大部分都是MVC模型的,先知道他controller,model,view,都存放在什么位置
然后看着和文档自己先写个hello world ,运行一下。
最后跟着他入口文件在一行一行的看他是如何加载的。
相比其他框架,感觉ci是比较直观明了的。新手上手也很快。

新手还是多看看PHP的各种语法,和代码风格比较好,对以后工作有很大的好处。

跟着入口文件,一行一行的看,加载了哪些文件,如何加载的,中间会不停地跳文件去看其他文件,看完返回来继续往下走。三方类库不用看,如何全局,如何路由,如何加载类,按这样的步骤。

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