3.2.2 版本开始支持插件控制器的调用, 可以通过更加方便的 URL 地址访问到模块中某个插件定义的控制器
当 URL 中传入插件控制器变量的时候, 会自动定位到插件控制器中的操作方法
插件控制器的变量由参数 VAR_ADDON 进行设置, 默认为 addon, 例如我们在 URL 中传入:
代码如下:
http://serverName/Home/info/index/addon/SystemInfo
由于传入了 addon 参数, 因此这里的 User 控制器并非原来的
代码如下:
Home/Controller/InfoController.class.php
而是调用 SystemInfo 插件 (位于 Home/Addon 目录下面) 的 InfoController 控制器了, 文件位于
代码如下:
Home/Addon/SystemInfo/Controller/InfoController.class.php
插件控制器本身的定义和普通的访问控制器一样, 例如:
代码如下:
- namespace Home\Addon\SystemInfo\Controller;
- class InfoController extends \Think\Controller{
- public function index(){
- echo 'Addon SystemInfo';
- }
- }
这样, 我们在访问
代码如下:
http://serverName/Home/info/index/addon/SystemInfo
的时候 就会输出
Addon SystemInfo
如果我们的插件目录不是 Addon, 而是 Plugin, 那么需要在配置文件中定义:
代码如下:
'VAR_ADDON' => 'plugin'
然后访问 URL 地址就变成了
代码如下:
http://serverName/Home/info/index/plugin/SystemInfo
注意: 目前插件控制器仅支持模块的插件控制器访问, 尚不支持全局的公共插件
注意: 该用法仅针对官网下载的 3.2.2 版本后续将会做出一些细节的调整, 包括定义插件位置等等
更多的用法, 请参考后续的详细手册内容
来源: https://www.php1.cn/detail/php-61fd4e5d68.html