thinkphp5源码浅探分析(一)基础篇

用了TP5框架有一段时间了 ,想来研究一下源代码,说干就干。
入口文件是public文件下的index.php文件

index.php.png

加载开始文件start.php
start.php.png

导入基础文件base.php并且执行应用,刚开始的时候我一直好奇下面的App类什么时候导入的
后来我仔细研究源代码总算让我知道了,原因出在base.php文件上

base.php.png

base.php 其中大多是配置代码 请注意39行代码 这是关键
导入tp5 Loader 类 并且自动加载register函数
加载Loader 的register函数.png

register.png

autoload.png

(提示:spl_autoload_register 函数是实现自动加载未定义类功能的的重要方法)

register函数的作用:是为没有include的类文件,自动找到类文件并加载。
简单的说 就是加载基础文件 ,具体逻辑请看源码


register函数自动导入的文件.png

这就不难理解App::run()->send();可以正常运行了

你可能感兴趣的:(thinkphp5源码浅探分析(一)基础篇)