/** * 初始化应用 */ public static function init() { //加载应用组配置 if (IS_GROUP) { is_file(COMMON_CONFIG_PATH . 'config.php') and C(require COMMON_CONFIG_PATH . 'config.php'); is_file(COMMON_CONFIG_PATH . 'event.php') and C('GROUP_EVENT', require COMMON_CONFIG_PATH . 'event.php'); is_file(COMMON_CONFIG_PATH . 'alias.php') and alias_import(COMMON_CONFIG_PATH . 'alias.php'); is_file(COMMON_LANGUAGE_PATH . C('LANGUAGE') . '.php') and L(require COMMON_LANGUAGE_PATH . C('LANGUAGE') . '.php'); } IS_GROUP and Route::group(); defined('GROUP_NAME') or define('GROUP_NAME', isset($_GET[C('VAR_GROUP')]) && !empty($_GET[C('VAR_GROUP')]) ? $_GET[C('VAR_GROUP')] : C('DEFAULT_GROUP')); defined('APP') or define('APP', ucfirst(IS_GROUP ? $_GET[C('VAR_APP')] : basename(substr(APP_PATH, 0, -1)))); IS_GROUP and define('APP_PATH', GROUP_PATH . GROUP_NAME . '/' . APP . '/'); //常量 defined('CONTROL_PATH') or define('CONTROL_PATH', APP_PATH . 'Control/'); defined('MODEL_PATH') or define('MODEL_PATH', APP_PATH . 'Model/'); defined('CONFIG_PATH') or define('CONFIG_PATH', APP_PATH . 'Config/'); defined('EVENT_PATH') or define('EVENT_PATH', APP_PATH . 'Event/'); defined('LANGUAGE_PATH') or define('LANGUAGE_PATH', APP_PATH . 'Language/'); defined('TAG_PATH') or define('TAG_PATH', APP_PATH . 'Tag/'); defined('LIB_PATH') or define('LIB_PATH', APP_PATH . 'Lib/'); defined('COMPILE_PATH') or define('COMPILE_PATH', TEMP_PATH . (IS_GROUP ? GROUP_NAME . '/' . APP . '/Compile/' : 'Compile/')); defined('CACHE_PATH') or define('CACHE_PATH', TEMP_PATH . (IS_GROUP ? GROUP_NAME . '/' . APP . '/Cache/' : 'Cache/')); defined('TABLE_PATH') or define('TABLE_PATH', TEMP_PATH . (IS_GROUP ? GROUP_NAME . '/' . APP . '/Table/' : 'Table/')); defined('LOG_PATH') or define('LOG_PATH', TEMP_PATH . 'Log/'); //应用配置 is_file(CONFIG_PATH . 'config.php') and C(require CONFIG_PATH . 'config.php'); is_file(CONFIG_PATH . 'event.php') and C('APP_EVENT', require CONFIG_PATH . 'event.php'); is_file(CONFIG_PATH . 'alias.php') and alias_import(CONFIG_PATH . 'alias.php'); is_file(LANGUAGE_PATH . C('LANGUAGE') . '.php') and L(require LANGUAGE_PATH . C('LANGUAGE') . '.php'); //模板目录 $tpl_style = C('TPL_STYLE'); if ($tpl_style and substr($tpl_style, -1) != '/') { $tpl_style .= '/'; } defined('TPL_PATH') or define('TPL_PATH', (C('TPL_PATH') ? C('TPL_PATH') : APP_PATH . 'Tpl/') . $tpl_style); defined('PUBLIC_PATH') or define('PUBLIC_PATH', TPL_PATH . 'Public/'); //应用url解析并创建常量 Route::app(); //=========================环境配置 date_default_timezone_set(C('DEFAULT_TIME_ZONE')); @ini_set('memory_limit', '128M'); @ini_set('register_globals', 'off'); @ini_set('magic_quotes_runtime', 0); define('NOW', $_SERVER['REQUEST_TIME']); define('NOW_MICROTIME', microtime(true)); define('REQUEST_METHOD', $_SERVER['REQUEST_METHOD']); define('IS_GET', REQUEST_METHOD == 'GET' ? true : false); define('IS_POST', REQUEST_METHOD == 'POST' ? true : false); define('IS_PUT', REQUEST_METHOD == 'PUT' ? true : false); define('IS_AJAX', ajax_request()); define('IS_DELETE', REQUEST_METHOD == 'DELETE' ? true : false); define('HTTP_REFERER', isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : null); //注册自动载入函数 spl_autoload_register(array(__CLASS__, 'autoload')); set_error_handler(array(__CLASS__, 'error'), E_ALL); set_exception_handler(array(__CLASS__, 'exception')); register_shutdown_function(array(__CLASS__, 'fatalError')); HDPHP::_appAutoLoad(); }
public static function init() { if (IS_GROUP) { if (is_file(COMMON_PATH . 'Config/config.php')) { C(require COMMON_PATH . 'Config/config.php'); } Route::group(); } define("APP", ucfirst(IS_GROUP ? $_GET[C('VAR_APP')] : basename(substr(APP_PATH, 0, -1)))); IS_GROUP and define("APP_PATH", GROUP_PATH . 'App/' . APP . '/'); defined("CONTROL_PATH") or define("CONTROL_PATH", APP_PATH . 'Control/'); defined("MODEL_PATH") or define("MODEL_PATH", APP_PATH . 'Model/'); defined("CONFIG_PATH") or define("CONFIG_PATH", APP_PATH . 'Config/'); defined("EXTEND_PATH") or define("EXTEND_PATH", APP_PATH . 'Extend/'); defined("EVENT_PATH") or define("EVENT_PATH", EXTEND_PATH . 'Event/'); defined("LANGUAGE_PATH") or define("LANGUAGE_PATH", EXTEND_PATH . 'Language/'); defined("TAG_PATH") or define("TAG_PATH", EXTEND_PATH . 'Tag/'); defined("LIB_PATH") or define("LIB_PATH", EXTEND_PATH . 'Lib/'); defined("COMPILE_PATH") or define("COMPILE_PATH", TEMP_PATH . (IS_GROUP ? APP . '/Compile/' : 'Compile/')); defined("CACHE_PATH") or define("CACHE_PATH", TEMP_PATH . (IS_GROUP ? APP . '/Cache/' : 'Cache/')); defined("TABLE_PATH") or define("TABLE_PATH", TEMP_PATH . (IS_GROUP ? APP . '/Table/' : 'Table/')); defined("LOG_PATH") or define("LOG_PATH", TEMP_PATH . 'Log/'); $app_config = CONFIG_PATH . 'config.php'; if (is_file($app_config)) { C(require $app_config); } $tpl = rtrim(C("TPL_DIR"), '/'); $tpl_style = rtrim(C("TPL_STYLE"), '/'); define("TPL_PATH", (strstr($tpl, '/') ? $tpl . '/' : APP_PATH . $tpl . '/') . ($tpl_style ? $tpl_style . '/' : $tpl_style)); define("PUBLIC_PATH", TPL_PATH . 'Public/'); Route::app(); @ini_set('memory_limit', '128M'); @ini_set("register_globals", "off"); @ini_set('magic_quotes_runtime', 0); define('NOW', $_SERVER['REQUEST_TIME']); define("NOW_MICROTIME", microtime(true)); define("MAGIC_QUOTES_GPC", @get_magic_quotes_gpc() ? true : false); define('REQUEST_METHOD', $_SERVER['REQUEST_METHOD']); define('IS_GET', REQUEST_METHOD == 'GET' ? true : false); define('IS_POST', REQUEST_METHOD == 'POST' ? true : false); define('IS_PUT', REQUEST_METHOD == 'PUT' ? true : false); define("IS_AJAX", ajax_request()); define('IS_DELETE', REQUEST_METHOD == 'DELETE' ? true : false); spl_autoload_register(array(__CLASS__, "autoload")); set_error_handler(array(__CLASS__, "error"), E_ALL); set_exception_handler(array(__CLASS__, "exception")); O("Session" . ucwords(C("SESSION_ENGINE")), "run"); !ini_get("session.auto_start") and C("SESSION_AUTO") and session_start(); is_file(COMMON_LANGUAGE_PATH . C('LANGUAGE') . '.php') and L(require COMMON_LANGUAGE_PATH . C('LANGUAGE') . '.php'); is_file(LANGUAGE_PATH . C('LANGUAGE') . '.php') and L(require LANGUAGE_PATH . C('LANGUAGE') . '.php'); C("CORE_EVENT", require HDPHP_CONFIG_PATH . "event.php"); IS_GROUP and is_file(COMMON_CONFIG_PATH . 'event.php') and C("GROUP_EVENT", require COMMON_CONFIG_PATH . 'event.php'); is_file(CONFIG_PATH . 'event.php') and C("APP_EVENT", require CONFIG_PATH . 'event.php'); IS_GROUP and is_file(COMMON_LIB_PATH . 'Alias.php') and alias_import(COMMON_LIB_PATH . 'Alias.php'); is_file(LIB_PATH . 'Alias.php') and alias_import(LIB_PATH . 'Alias.php'); }