diff --git a/Think/App.php b/Think/App.php index 7d9197f6..1fd0d388 100644 --- a/Think/App.php +++ b/Think/App.php @@ -56,11 +56,7 @@ class App { // 执行操作 $instance = Loader::controller(CONTROLLER_NAME); if(!$instance) { - // 是否定义empty控制器 - $instance = Loader::controller('empty'); - if(!$instance){ - E('controller not exists :'.CONTROLLER_NAME,404); - } + E('controller not exists : [ '.MODULE_NAME.'\\Controller\\'.parse_name(CONTROLLER_NAME,1).'Controller ]',404); } // 获取当前操作名 diff --git a/Think/Loader.php b/Think/Loader.php index a1e6b7f2..156e37f1 100644 --- a/Think/Loader.php +++ b/Think/Loader.php @@ -156,7 +156,7 @@ class Loader { * 实例化(分层)控制器 格式:[模块名/]控制器名 * @param string $name 资源地址 * @param string $layer 控制层名称 - * @return Action|false + * @return Object|false */ static public function controller($name,$layer='Controller') { static $_instance = []; @@ -168,9 +168,12 @@ class Loader { } $class = $module.'\\'.$layer.'\\'.parse_name($name,1).$layer; if(class_exists($class)) { - $action = new $class(); + $action = new $class; $_instance[$name.$layer] = $action; return $action; + }elseif(class_exists($module.'\\'.$layer.'\\Empty'.$layer)){ + $class = $module.'\\'.$layer.'\\Empty'.$layer; + return new $class; }else{ return false; }