(传智博客)tp开发第一天之tp执行流程分析笔记

时间:2023-03-09 03:13:55
(传智博客)tp开发第一天之tp执行流程分析笔记

1、入口文件index.php

2、ThinkPHP/ThinkPHP.php

  require THINK_PATH.'Common/runtime.php';

3、ThinkPHP/Common/runtime.php

  此文件声明了许多常量信息

  加载创建应用目录

  if(is_file($file)) require_cache($file);

  自动创建应用目录

  build_app_dir();

Think::Start();

4、ThinkPHP/lib/Core/Think.class.php

  static function start(){}

  Think::buildAPP();//预编译项目

  APP::run();

5、ThinkPHP/lib/Core/App.class.php

  static public function run(){}

  App::init();

    Dispatch分析路由

    分析路由(控制器MODULE_NAME 方法 ACTION_NAME)index.php?c=控制器&a=方法

    App::exec();

      通过反射ReflectionMethod使得控制器对象调用对应的方法。