当前位置: 首页 > 后端技术 > PHP

thinkphp源码分析(二)—入门篇

时间:2023-03-29 14:41:32 PHP

源码分析---入门篇源码分析用户发起的应用入口请求,会经过应用入口文件,一般是==public/index.php==文件。当然,您也可以更改或添加新的条目文件。通常入口文件的代码比较简单。一个常见的入口文件代码如下://应用入口文件//定义项目路径define('APP_PATH',__DIR__.'/../application/');//加载框架引导文件require__DIR__.'/../thinkphp/start.php';通用入口文件主要定义了一些常量。支持的常量请参考后续内容或附录。一般来说,我们不建议在应用入口文件中加入过多的代码,尤其是与业务逻辑相关的代码。加载启动文件//ThinkPHP启动文件//1.加载基础文件require__DIR__。'/base.php';//2.执行应用程序App::run()->send();加载基础文件//__DIR__。'/base.php'文件//定义常量define('THINK_VERSION','5.0.24');....//常量省略部分//Loader类需要CORE_PATH.'Loader.php';//加载环境变量配置文件if(is_file(ROOT_PATH.'.env')){$env=parse_ini_file(ROOT_PATH.'.env',true);foreach($envas$key=>$val){$name=ENV_PREFIX.strtoupper($键);如果(is_array($val)){foreach($valas$k=>$v){$item=$name.'_'。strtoupper($k);putenv("$item=$v");}}else{putenv("$name=$val");}}}//注册自动加载\think\Loader::register();//注册错误和异常处理机制\think\Error::register();//加载常规配置文件\think\Config::set(includeTHINK_PATH.'convention'.EXT);这部分主要是定义了一些系统常量,重点是自动加载的引入类注册自动加载,这样框架就可以自动导入类文件,业务层只要直接使用对应的类就可以实例化到命名空间,注册错误和异常处理机制,加载默认配置等操作。最后,应用启动,App::run()->send();