基本使用
覆盖
CommonController
公共控制器方法,相当于极致CMS所有东西都可以在plugins
文件夹内实现!v2.5.4+ 新增
说明
原系统(
v2.5.4
版本以前)所有控制器都是继承CommonController
这个类,里面有一些自带的方法,
如果你要想改CommonController
里面的文件,必须直接覆盖这个控制器,而无法直接在plugins
文件使用cover方式
实现
现在(v2.5.4+
)可以直接在plugins
文件夹里面创建CommonController文件,直接使用cover方法
重写!
关键代码说明
namespace app\home\c;
use frphp\lib\Controller;
class CommonController extends Controller
{
function _init(){
//以下部分为关键部分,如果cover方式要修改文件,请删除这下面部分代码
if(class_exists('app\home\plugins\CommonController')){
$extCommonModel = new \app\home\plugins\CommonController($this->frparam());
if(method_exists($extCommonModel,APP_ACTION)){
$action = APP_ACTION;
$extCommonModel->$action();
exit;
}
}
....
}
....
}
以上代码检测是否在
plugins
文件夹里面存在CommonController
控制器,如果存在则直接调用这个控制器,不再往下执行!
注意
使用
cover方式
二开的时候,请将这部分代码删除,然后修改空间命名即可!超级简单!!!
if(class_exists('app\home\plugins\CommonController')){
$extCommonModel = new \app\home\plugins\CommonController($this->frparam());
if(method_exists($extCommonModel,APP_ACTION)){
$action = APP_ACTION;
$extCommonModel->$action();
exit;
}
}