- 定义类映射 静态变量$_map=array()
- 实例化对象 静态变量$_instance=array()
- 初始化方法 静态方法 start
- 注册自动加载方法 spl_autoload_register('Think\Think::autoload')
- 设定错误和异常处理 register_shutdown_function('Think\Think::fatalError'); set_error_handler('Think\Think::appError'); set_exception_hander('Think\Think::appException')
- 初始化文件存储方式 Storage::connect(STORAGE_TYPE)
- 定位项目编译后的文件 RUNTIME_PATH.APP_MODE.'~runtime.php 如果非调试并存在该文件,则加载该文件;否则:
- 如果存在该文件,删除该文件;
- 读取应用模式 $mode = include is_file(CONF_PATH.'core.php') ? :MODE_PATH.APP_MODE.'.php';
- 加载核心文件 $mode['core'] 如果非调试则编译该核心文件
- 加载应用模式配置文件 $mode['config']
- 读取当前应用模式对应的配置文件
- 加载模式别名定义 $mode['alias'](self::addMap方法)
- 加载应用别名定义文件
- 加载模式行为定义 $mode['tags'](Hook::import方法)
- 加载应用行为定义
- 加载框架底层语言包
- 非调试保存编译文件 否则加载系统默认配置文件并读取应用调试配置文件
- 读取当前应用状态对应的配置文件
- 设置系统时区
- 检查应用目录结构 如不存则则自动创建
- 记录加载文件时间
- 运行应用APP::run()