控制器

FastAdmin插件中的控制器和ThinkPHP5的控制器类似,请查看ThinkPHP5控制器章节

BOYySIHDFzJbjNLMrUtCJb2NsJ6zZmIh64IhLA==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

请参考:https://www.kancloud.cn/manual/thinkphp5/118047

LOaurAfdqkbSZKMgwt4JhB00Xsb3e7qLkYdUAg==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

特别提醒

UxeAHIXcmydYJWVMzKZznrsVhEV8XuLMg53Z2A==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

FastAdmin插件控制器和ThinkPHP5控制器不同之处主要有以下几点
1.基类不同

QcOngGrfUMksRqNCiVVxzdeOdnyDXq+TpfjmYA==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。
插件控制器基类为:\think\addons\Controller
ThinkPHP5控制器基类为:\think\Controller
AjzGPMoQFfZdgLVC5sqnNBczJ9cQE9YilJGYCA==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

2.请求URL不同

sTyNGptdEHDramBnzOTjvcPNsiEVNWyhFZ1/0g==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。
插件控制器请求方法为:http://www.fa.com/addons/mydemo/控制器名/方法
ThinkPHP5控制器请求方法为:http://www.fa.com/模块名/控制器名/方法
JVSNMRQnpoCyDgiG/WElutN3wDDwsy6jkc1Z4Q==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

3.当使用层级控制器时

udNQizhXRtEaeJMjPpo7SA1GKwQxyb9cZNSj5g==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。
插件控制器请求方法为:http://www.fa.com/addons/mydemo/目录名.控制器名/方法
ThinkPHP5控制器请求方法为:http://www.fa.com/模块名/目录名.控制器名/方法
hsOqBpzrIlETRbkozDTAT/AhX4+/Ocw0/bT7NQ==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

插件控制器必须继承\think\addons\Controller这个基类控制器。

kayxPIiQGnWCFoMVbZTeUiQ3RDY4+KnQawt2WA==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

控制器定义

WlKZomJQPRLFiGaSE71t0wGStuz9PuAVPywmDA==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

一个典型的控制器代码如下:

FmKpJxCNebTMgZdsrHIDX+DvQTH8b4FMgjSN1Q==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。
<?php

namespace addons\mydemo\controller;

use think\addons\Controller;

class Index extends Controller
{

    public function index()
    {
        $this->error("当前插件暂无前台页面");
    }

}
OHlbSGtfKITFpwmdsE7JzzGFZxNAZlXmu6M9aw==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

其文件位置位于addons/mydemo/Index.php

auCByTHjWwpUJenYxr2zKCOkdA0tf4q9YdmI/Q==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

控制器请求

MnuOLcvyzXoJYjmhIIQbG2rMKykD3Vfp2g2i3g==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。
http://www.fa.com/addons/mydemo/控制器名/控制器方法
GweDhEpMygHlRYrOkRd56RRhN3Q/byZ8oqv9AQ==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

基类控制器

zkCxdIMsqPWQnpTgAVqg1NFLJKpsO1Tu5dwvHw==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

FastAdmin插件控制器的基类控制器\think\addons\Controller位于vendor/karsonzhang/fastadmin-addons/src/addons/Controller.php

SayrEtiksnAOYebmZfBJMINSaeTOSqXkUL7LTA==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

基类控制器是FastAdmin插件系统的一部分,在基类控制器进行了一系列的操作,包括插件控制器权限检查、语言包加载、布局设定、配置加载等操作。

KpXasgOyeWUPZbFuCPfVv20OPT+9uHIZDicvmA==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

同时基类控制器也是继承自\think\Controller,此控制器基类是ThinkPHP5自带的基类控制器,因此也可以实现绝大多数ThinkPHP5官方文档控制器章节的功能。

HVZbghaSTFXtBuOvjP3QnlNyaimhXMDGvY2k/w==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

基类属性

kxiYMdGEAnUQSLVe1XvCzV1z1UTx/xICpYyjEQ==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。
protected $addon = null; //插件名称
protected $controller = null; //控制器名称
protected $action = null; //方法名称
/**
 * 无需登录的方法,同时也就不需要鉴权了
 * @var array
 */
protected $noNeedLogin = ['*'];
/**
 * 无需鉴权的方法,但需要登录
 * @var array
 */
protected $noNeedRight = ['*'];
/**
 * 权限Auth,如果用户是登录状态,可以直接从中读取用户信息
 * @var Auth
 */
protected $auth = null;

/**
 * 布局模板,默认不启用
 * @var string
 */
protected $layout = null;
rdKsjqvZYRMuLXtooKhn8u5VkqqA0g6m1dvNSA==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

特别注意

HMJDzPqxEysjnCOo875xEcnumPs02PpE9kh3vQ==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

FastAdmin中的\think\addons\Controller插件控制器基类控制器有启用全局过滤,过滤方法为trim,strip_tags,htmlspecialchars,当使用ThinkPHP5的方法获取请求的参数值时,会被过滤HTML和特殊字符,如有特殊情况下需要不过滤(如获取小程序请求的encryptedDatarawData),可以使用$this->request->post("参数名", "默认值", null);将第三个参数设置为null即可获取原生请求的数据,当使用原生请求的数据时务必注意服务端的安全处理和安全输出。

JpKhfHtFsbMBSgALAxf2GlYCQvbD6fk1fFCaLg==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

文档最后更新时间:2024-08-23 16:21:33
著作权归应用插件开发者所有,未经许可,禁止转载、复制此文档的任何内容。

文档
目录

深色
模式

切换
宽度