1.11 系统流程
匿名 · 更新于 2013/12/20
我们以访问网址 http://serverName.com/index.php/User/read/id/8 为例,分两种情况来解析下系统的执行流程,首先是调试模式下面的主要执行流程:
| 序号 | 流程说明 |
|---|---|
| 1 | 用户访问网站URL地址 |
| 2 | 调用项目的入口文件(这里是index.php) |
| 3 | 载入系统入口文件ThinkPHP.php |
| 4 | 判断系统常量,如果没有定义则自动生成 |
| 5 | 载入系统运行时文件runtime.php并定义项目路径常量 |
| 6 | 加载运行时所需的文件(通过调用load_runtime_file函数) |
| 7 | 后面的流程和调试模式基本相同,只是模板编译过程省略了 |
| 8 | 读取核心基础文件列表和加载系统别名定义文件 |
| 9 | 检查项目相关目录是否存在,不存在则自动生成 |
| 10 | 调用Think::start执行入口 |
| 11 | 设置异常和错误处理机制 |
| 12 | 注册系统自动加载机制 |
| 13 | 预编译当前项目 |
| 14 | 加载框架惯例配置文件 |
| 15 | 读取当前的运行模式如果不是标准模式则加载模式的配置文件(如果存在) |
| 16 | 加载模式和项目配置文件 |
| 17 | 加载框架底层语言包文件 |
| 18 | 加载当前模式的系统行为定义文件 |
| 19 | 加载当前模式的项目行为定义文件(如果存在) |
| 20 | 读取核心编译文件列表 |
| 21 | 载入项目公共函数文件 |
| 2<
|
