mirror of
https://gitee.com/fastadminnet/framework.git
synced 2026-07-01 20:52:48 +08:00
修正空控制器名称和关键字冲突的问题
空控制器默认改为 Error 并且可以自定义 通过修改 empty_controller 参数
This commit is contained in:
@@ -10,6 +10,7 @@ return [
|
||||
'default_module' => 'index', // 默认模块名
|
||||
'default_controller' => 'index', // 默认控制器名
|
||||
'default_action' => 'index', // 默认操作名
|
||||
'empty_controller' => 'error', // 默认的空控制器名
|
||||
'action_suffix' => '', // 操作方法后缀
|
||||
'url_model' => 1, // URL模式
|
||||
'url_request_uri' => 'REQUEST_URI', // 获取当前页面地址的系统变量 默认为REQUEST_URI
|
||||
|
||||
@@ -83,7 +83,7 @@ class App {
|
||||
// 操作绑定到类后 固定执行run入口
|
||||
$action = 'run';
|
||||
}else{
|
||||
$instance = Loader::controller(CONTROLLER_NAME);
|
||||
$instance = Loader::controller(CONTROLLER_NAME,'',$config['empty_controller']);
|
||||
// 获取当前操作名
|
||||
$action = ACTION_NAME . $config['action_suffix'];
|
||||
}
|
||||
|
||||
@@ -154,10 +154,12 @@ class Loader {
|
||||
* 实例化(分层)控制器 格式:[模块名/]控制器名
|
||||
* @param string $name 资源地址
|
||||
* @param string $layer 控制层名称
|
||||
* @param string $empty 空控制器名称
|
||||
* @return Object|false
|
||||
*/
|
||||
static public function controller($name, $layer = CONTROLLER_LAYER) {
|
||||
static public function controller($name, $layer = '', $empty='') {
|
||||
static $_instance = [];
|
||||
$layer = $layer ? : CONTROLLER_LAYER;
|
||||
if(isset($_instance[$name.$layer])) {
|
||||
return $_instance[$name . $layer];
|
||||
}
|
||||
@@ -171,8 +173,8 @@ class Loader {
|
||||
$action = new $class;
|
||||
$_instance[$name . $layer] = $action;
|
||||
return $action;
|
||||
}elseif(class_exists($module . '\\' . $layer . '\\Empty')){
|
||||
$class = $module . '\\' . $layer . '\\Empty';
|
||||
}elseif($empty && class_exists($module . '\\' . $layer . '\\'.$empty)){
|
||||
$class = $module . '\\' . $layer . '\\'.$empty;
|
||||
return new $class;
|
||||
}else{
|
||||
return false;
|
||||
|
||||
@@ -105,7 +105,7 @@ class View {
|
||||
* @param string $cache_id 模板缓存标识
|
||||
* @return string
|
||||
*/
|
||||
public function fetch($template, $vars = [], $cache_id='',$renderContent=false) {
|
||||
public function fetch($template='', $vars = [], $cache_id='',$renderContent=false) {
|
||||
if(!$renderContent){
|
||||
// 获取模板文件名
|
||||
$template = $this->parseTemplate($template);
|
||||
|
||||
Reference in New Issue
Block a user