控制器定义
ThinkCMF5的控制器完全按 TP5的控制器用法来,但 CMF 封装了几个重要控制器基类,为了更方便开发者,我们建议如果没有特殊需求,自己创建的控制器请最好继承一个基类控制器;
用于 WEB 项目的基类控制器有四个,分别是:BaseController
,HomeBaseController
,UserBaseController
,AdminBaseController
继承关系
think\Controller TP控制器基类
│ ├─BaseController CMF控制器基类
│ │ ├─AdminBaseController 后台控制器基类
│ │ ├─HomeBaseController 前台控制器基类
│ │ │ └─ UserBaseController 前台用户控制器基类
控制类名都要加 Controller
后缀,一个 portal
应用下的控制器如下:
<?php
namespace app\portal\controller;
use cmf\controller\HomeBaseController;
class IndexController extends HomeBaseController
{
public function index()
{
$this->assign("hello", "Hello ThinkCMF Portal!");
return $this->fetch(':index');
}
}
这个控制器类文件的路径是:
app/portal/controller/IndexController.php
注意: ThinkCMF5应用控制器的根命名空间是app
,而不是application
,这样是为了更清楚表明控制器所在目录