From bbfa7eac23c7f4303ddcad5899546d3813ee14df Mon Sep 17 00:00:00 2001 From: thinkphp Date: Mon, 25 Mar 2013 21:48:19 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=A1=B9=E7=9B=AE=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96=E6=96=87=E4=BB=B6=E5=92=8C=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96=E6=96=87=E4=BB=B6=E6=94=AF=E6=8C=81?= =?UTF-8?q?=20=E5=8F=AF=E4=BB=A5=E8=A6=86=E7=9B=96=E5=86=85=E7=BD=AE?= =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96=E6=9C=BA=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Think/App.php | 90 ++++++++++++++++++++++++++++----------------------- 1 file changed, 49 insertions(+), 41 deletions(-) diff --git a/Think/App.php b/Think/App.php index 964897fb..53b3e419 100644 --- a/Think/App.php +++ b/Think/App.php @@ -28,24 +28,27 @@ class App { static public function run() { // 监听app_init Tag::listen('app_init'); - // 加载全局公共文件和配置 - - // 检测项目(或模块)配置文件 - if(is_file(APP_PATH.'config'.EXT)) { - $config = Config::set(include APP_PATH.'config'.EXT); - } - // 加载别名文件 - if(is_file(APP_PATH.'alias'.EXT)) { - Loader::import(include APP_PATH.'alias'.EXT); - } - // 加载公共文件 - if(is_file(APP_PATH.'common'.EXT)) { - include APP_PATH.'common'.EXT; - } - - if(is_file(APP_PATH.'tags'.EXT)) { - // 行为扩展文件 - Tag::import(include APP_PATH.'tags'.EXT); + // 加载全局初始化文件 + if(is_file(APP_PATH.'init'.EXT)) { + include APP_PATH.'init'.EXT; + $config = Config::get(); + }else{ + // 检测项目(或模块)配置文件 + if(is_file(APP_PATH.'config'.EXT)) { + $config = Config::set(include APP_PATH.'config'.EXT); + } + // 加载别名文件 + if(is_file(APP_PATH.'alias'.EXT)) { + Loader::import(include APP_PATH.'alias'.EXT); + } + // 加载公共文件 + if(is_file(APP_PATH.'common'.EXT)) { + include APP_PATH.'common'.EXT; + } + if(is_file(APP_PATH.'tags'.EXT)) { + // 行为扩展文件 + Tag::import(include APP_PATH.'tags'.EXT); + } } // 应用URL调度 self::dispatch($config); @@ -211,31 +214,36 @@ class App { // 获取模块名称 define('MODULE_NAME',strtolower(isset($_GET[$var_m])?$_GET[$var_m]:$config['default_module'])); - // 加载模块的公共文件和配置 - if(is_dir(APP_PATH.MODULE_NAME)) { + // 模块初始化 + if(MODULE_NAME && is_dir(APP_PATH.MODULE_NAME)) { define('MODULE_PATH',APP_PATH.MODULE_NAME.'/'); Tag::listen('app_begin'); - - // 检测项目(或模块)配置文件 - if(is_file(MODULE_PATH.'config'.EXT)) { - $config = Config::set(include MODULE_PATH.'config'.EXT); - } - if($config['app_status']) { - // 加载对应的项目配置文件 - if(is_file(MODULE_PATH.$config['app_status'].EXT)) - $config = Config::set(include MODULE_PATH.$config['app_status'].EXT); - } - // 加载别名文件 - if(is_file(MODULE_PATH.'alias'.EXT)) { - Loader::import(include MODULE_PATH.'alias'.EXT); - } - // 加载公共文件 - if(is_file(MODULE_PATH.'common'.EXT)) { - include MODULE_PATH.'common'.EXT; - } - if(is_file(MODULE_PATH.'tags'.EXT)) { - // 行为扩展文件 - Tag::import(include MODULE_PATH.'tags'.EXT); + // 加载模块初始化文件 + if(is_file(MODULE_PATH.'init'.EXT)) { + include MODULE_PATH.'init'.EXT; + $config = Config::get(); + }else{ + // 检测项目(或模块)配置文件 + if(is_file(MODULE_PATH.'config'.EXT)) { + $config = Config::set(include MODULE_PATH.'config'.EXT); + } + if($config['app_status']) { + // 加载对应的项目配置文件 + if(is_file(MODULE_PATH.$config['app_status'].EXT)) + $config = Config::set(include MODULE_PATH.$config['app_status'].EXT); + } + // 加载别名文件 + if(is_file(MODULE_PATH.'alias'.EXT)) { + Loader::import(include MODULE_PATH.'alias'.EXT); + } + // 加载公共文件 + if(is_file(MODULE_PATH.'common'.EXT)) { + include MODULE_PATH.'common'.EXT; + } + if(is_file(MODULE_PATH.'tags'.EXT)) { + // 行为扩展文件 + Tag::import(include MODULE_PATH.'tags'.EXT); + } } $var_c = $config['var_controller']; $var_a = $config['var_action'];