From 1cb86e4a3b4047a75f20082aec928ef5125167d1 Mon Sep 17 00:00:00 2001 From: thinkphp Date: Sun, 27 Mar 2016 20:47:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A7=E5=88=B6=E5=99=A8=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E7=A7=BB=E9=99=A4=20=E5=A2=9E=E5=8A=A0controller=5Fload?= =?UTF-8?q?=E6=A0=87=E7=AD=BE=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- convention.php | 2 -- library/think/App.php | 2 +- library/think/Loader.php | 12 ++++-------- 3 files changed, 5 insertions(+), 11 deletions(-) diff --git a/convention.php b/convention.php index 255afbc1..d4d94782 100644 --- a/convention.php +++ b/convention.php @@ -71,8 +71,6 @@ return [ 'pathinfo_depr' => '/', // 获取当前页面地址的系统变量 默认为REQUEST_URI 'url_request_uri' => 'REQUEST_URI', - // 控制器版本参数 - 'var_version' => 'v', // 基础URL路径 'base_url' => $_SERVER["SCRIPT_NAME"], // URL伪静态后缀 diff --git a/library/think/App.php b/library/think/App.php index 857a733f..291564cb 100644 --- a/library/think/App.php +++ b/library/think/App.php @@ -224,7 +224,7 @@ class App // 安全检测 throw new Exception('illegal controller name:' . CONTROLLER_NAME, 10000); } - $instance = Loader::controller(CONTROLLER_NAME, '', Config::get('empty_controller'), Input::get(Config::get('var_version'))); + $instance = Loader::controller(CONTROLLER_NAME, '', Config::get('empty_controller')); // 获取当前操作名 $action = ACTION_NAME . Config::get('action_suffix'); diff --git a/library/think/Loader.php b/library/think/Loader.php index 24b1c185..82a890af 100644 --- a/library/think/Loader.php +++ b/library/think/Loader.php @@ -322,10 +322,9 @@ class Loader * @param string $name 资源地址 * @param string $layer 控制层名称 * @param string $empty 空控制器名称 - * @param string $version 版本号 例如 1.0 1.2.3 * @return Object|false */ - public static function controller($name, $layer = '', $empty = '', $version = null) + public static function controller($name, $layer = '', $empty = '') { static $_instance = []; $layer = $layer ?: CONTROLLER_LAYER; @@ -338,12 +337,9 @@ class Loader $module = APP_MULTI_MODULE ? MODULE_NAME : ''; } $class = self::parseClass($module, $layer, $name); - if ($version) { - $filename = APP_PATH . str_replace(APP_NAMESPACE . '\\', '', dirname($class)) . DS . $version . DS . basename($class) . EXT; - if (is_file($filename)) { - require $filename; - } - } + // controller_load + APP_HOOK && Hook::listen('controller_load', $class); + if (class_exists($class)) { $action = new $class; $_instance[$name . $layer] = $action;