第一篇

xiaoxiao2021-02-28  108

1.index.php

// 定义应用目录 应用目录为public目录的上一级目录的application目录 define('APP_PATH', __DIR__ . '/../application/'); // 加载框架引导文件 require __DIR__ . '/../thinkphp/start.php'; 2.start.php

namespace think;//命名空间为think // ThinkPHP 引导文件 // 加载基础文件,加载当前文件所在目录下的base.php文件 require __DIR__ . '/base.php'; // 执行应用,run方法产生response类实例,再调用该类实例的send方法 App::run()->send();3.base.php

define('THINK_VERSION', '5.0.10'); //版本号 define('THINK_START_TIME', microtime(true)); //应用开始时间 返回当前 Unix 时间戳和微秒数以浮点数的形式 define('THINK_START_MEM', memory_get_usage()); // 返回当前分配给你的 PHP 脚本的内存量,单位是字节(byte define('EXT', '.php'); //后缀名为.php define('DS', DIRECTORY_SEPARATOR); //目录分隔符,在不同操作系统目录分隔符不相同 defined('THINK_PATH') or define('THINK_PATH', __DIR__ . DS); //THINK_PATH 路径为 ..../thinkphp/,没有定义的情况下 define('LIB_PATH', THINK_PATH . 'library' . DS); //常量值为 .../thinkphp/library/ define('CORE_PATH', LIB_PATH . 'think' . DS);//常量值为 .../thinkphp/library/think/ define('TRAIT_PATH', LIB_PATH . 'traits' . DS);//常量值为 .../thinkphp/library/traits/ defined('APP_PATH') or define('APP_PATH', dirname($_SERVER['SCRIPT_FILENAME']) . DS); //APP_PATH没有定义的情况下 就是在public目录下 .../public/ defined('ROOT_PATH') or define('ROOT_PATH', dirname(realpath(APP_PATH)) . DS); //没有定义ROOT_PATH的情况下,默认为APP_PATH的上一级目录 defined('EXTEND_PATH') or define('EXTEND_PATH', ROOT_PATH . 'extend' . DS);//默认为ROOT_PATH目录里面的extend目录 defined('VENDOR_PATH') or define('VENDOR_PATH', ROOT_PATH . 'vendor' . DS);//默认为ROOT_PATH目录里面的vendor目录 defined('RUNTIME_PATH') or define('RUNTIME_PATH', ROOT_PATH . 'runtime' . DS);//默认为ROOT_PATH目录里的runtime目录 defined('LOG_PATH') or define('LOG_PATH', RUNTIME_PATH . 'log' . DS);//默认为RUNTIME_PATH下面的log目录 defined('CACHE_PATH') or define('CACHE_PATH', RUNTIME_PATH . 'cache' . DS);//默认为RUNTIME_PATH下面的cache目录 defined('TEMP_PATH') or define('TEMP_PATH', RUNTIME_PATH . 'temp' . DS);//默认为RUNTIME_PATH下面的temp目录 defined('CONF_PATH') or define('CONF_PATH', APP_PATH); // 配置文件目录和APP_PATH目录一样 defined('CONF_EXT') or define('CONF_EXT', EXT); // 配置文件后缀,配置文件后缀为.php defined('ENV_PREFIX') or define('ENV_PREFIX', 'PHP_'); // 环境变量的配置前缀为PHP_ // 环境常量 define('IS_CLI', PHP_SAPI == 'cli' ? true : false);//IS_CLS判断是不是终端环境运行 define('IS_WIN', strpos(PHP_OS, 'WIN') !== false);//判断当前操作系统是不是windows操作系统内 // 载入Loader类 require CORE_PATH . 'Loader.php';//加载 // 加载环境变量配置文件,线判断根目录下的.env文件是不是一个文件如果,格式必须是和ini文件一样的格式,再解析ini文件,设置php.ini if (is_file(ROOT_PATH . '.env')) { $env = parse_ini_file(ROOT_PATH . '.env', true); foreach ($env as $key => $val) { $name = ENV_PREFIX . strtoupper($key); if (is_array($val)) { foreach ($val as $k => $v) { $item = $name . '_' . strtoupper($k); putenv("$item=$v");//设置环境变量的值环境变量仅存活于当前请求期间。 在请求结束时环境会恢复到初始状态 } } else { putenv("$name=$val");//设置环境变量的值环境变量仅存活于当前请求期间。 在请求结束时环境会恢复到初始状态用户仅能够修改以 PHP_ 开头的环境变量 } } } // 注册自动加载 \think\Loader::register(); //加载注册 // 注册错误和异常处理机制 \think\Error::register();//错误注册 // 加载惯例配置文件 \think\Config::set(include THINK_PATH . 'convention' . EXT);//加载THINK_PATH下的convention.php文件

转载请注明原文地址: https://www.6miu.com/read-45889.html

最新回复(0)