应用执行流程

浏览数 99491 最后修改时间
YiluPHP非常小巧,框架自带demo和保留了代码的中文注释,文件总容量才 275 KB,打包成zip文件后才99KB,如此小巧的框架,你要禁不住喊出“哦妹子音”,在这个设计模式乱飞、优雅姿势胜出的时代,竟然能抽象提取出如此精简的PHP框架。
对的,YiluPHP就是这么精简小巧,要了解它的全部执行流程也是相当容易的事,甚至你可以通过查看源码了解清楚,全部流程就体现在这一个文件当中 /public/index.php,包括空行和注释总共才1081行,10分钟即可通过阅读源码看清执行流程。
下面是整个执行流程:

  1. index.php入口文件
  2. 定义项目根目录的全局常量 APP_PATH
  3. 载入配置信息到全局变量 $config
  4. 定义框架的系统文件目录全局常量 SYSTEM_PATH
  5. 设置PHP错误级别
  6. 定义一些错误码的常量
  7. 定义了几个必须的公共函数
  8. 定义了框架的核心类 YiluPHP
  9. 注册类的自动加载方法
  10. 设置Session存储到Redis   如果不使用session则不会执行此步骤
  11. 设置当前使用的语言
  12. 实例化YiluPHP的核心对象$app
  13. 写访问日志   用于跟踪请求是否已到达
  14. 如果是CLI模式则解析参数$_GET、$_POST和$_REQUEST
  15. 如果是http请求模式则执行以下流程
  16. 执行前置类   例如身份校验、权限验证、CSRF检查
  17. 解析URI路由和参数
  18. 查找并执行controller文件
  19. 在controller中调用logic逻辑处理类   识情况选择性调用
  20. 在controller中调用model数据模型类    识情况选择性调用
  21. 在controller中调用全局函数result()渲染html模板或其它格式的结果数据    例如HTML、JSON、JSONP、错误
  22. result()函数中执行后置类    例如头信息设置
  23. 输出result()返回的数据
  24. 结束



我来说说