64 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
// +----------------------------------------------------------------------
 | 
						|
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
 | 
						|
// +----------------------------------------------------------------------
 | 
						|
// | Copyright (c) 2006~2017 http://thinkphp.cn All rights reserved.
 | 
						|
// +----------------------------------------------------------------------
 | 
						|
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
 | 
						|
// +----------------------------------------------------------------------
 | 
						|
// | Author: liu21st <liu21st@gmail.com>
 | 
						|
// +----------------------------------------------------------------------
 | 
						|
 | 
						|
define('THINK_VERSION', '5.0.11');
 | 
						|
define('THINK_START_TIME', microtime(true));
 | 
						|
define('THINK_START_MEM', memory_get_usage());
 | 
						|
define('EXT', '.php');
 | 
						|
define('DS', DIRECTORY_SEPARATOR);
 | 
						|
defined('THINK_PATH') or define('THINK_PATH', __DIR__ . DS);
 | 
						|
define('LIB_PATH', THINK_PATH . 'library' . DS);
 | 
						|
define('CORE_PATH', LIB_PATH . 'think' . DS);
 | 
						|
define('TRAIT_PATH', LIB_PATH . 'traits' . DS);
 | 
						|
defined('APP_PATH') or define('APP_PATH', dirname($_SERVER['SCRIPT_FILENAME']) . DS);
 | 
						|
defined('ROOT_PATH') or define('ROOT_PATH', dirname(realpath(APP_PATH)) . DS);
 | 
						|
defined('EXTEND_PATH') or define('EXTEND_PATH', ROOT_PATH . 'extend' . DS);
 | 
						|
defined('VENDOR_PATH') or define('VENDOR_PATH', ROOT_PATH . 'vendor' . DS);
 | 
						|
defined('RUNTIME_PATH') or define('RUNTIME_PATH', ROOT_PATH . 'runtime' . DS);
 | 
						|
defined('LOG_PATH') or define('LOG_PATH', RUNTIME_PATH . 'log' . DS);
 | 
						|
defined('CACHE_PATH') or define('CACHE_PATH', RUNTIME_PATH . 'cache' . DS);
 | 
						|
defined('TEMP_PATH') or define('TEMP_PATH', RUNTIME_PATH . 'temp' . DS);
 | 
						|
defined('CONF_PATH') or define('CONF_PATH', APP_PATH); // 配置文件目录
 | 
						|
defined('CONF_EXT') or define('CONF_EXT', EXT); // 配置文件后缀
 | 
						|
defined('ENV_PREFIX') or define('ENV_PREFIX', 'PHP_'); // 环境变量的配置前缀
 | 
						|
 | 
						|
// 环境常量
 | 
						|
define('IS_CLI', PHP_SAPI == 'cli' ? true : false);
 | 
						|
define('IS_WIN', strpos(PHP_OS, 'WIN') !== false);
 | 
						|
 | 
						|
// 载入Loader类
 | 
						|
require CORE_PATH . 'Loader.php';
 | 
						|
 | 
						|
// 加载环境变量配置文件
 | 
						|
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");
 | 
						|
        }
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
// 注册自动加载
 | 
						|
\think\Loader::register();
 | 
						|
 | 
						|
// 注册错误和异常处理机制
 | 
						|
\think\Error::register();
 | 
						|
 | 
						|
// 加载惯例配置文件
 | 
						|
\think\Config::set(include THINK_PATH . 'convention' . EXT);
 |