3.2.2的插件控制器功能

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 HomeAddonSystemInfoController;
class InfoController extends ThinkController{
    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版本。后续将会做出一些细节的调整,包括定义插件位置等等。
更多的用法,请参考后续的详细手册内容

相关文章

public function getapiSignature(){$access_token=S('access_token');//先查询缓存中...
前述两篇文章“使用BootStrap制作用户登录UI”和“使用BootStrapValidator来完成前端输入验证 ”已经将...
前两天自己写的一篇文章“针对BootStrap中tabs控件的美化和完善”被别的网站给转载了,这也许是值得高兴...
由于用惯了ThinkPHP之前的版本,一想到要用Session就直接用$_SESSION来存取,今天看了ThinkPHP5的手册,...
今天访问自己的网站的时候(by thinkphp),突然发现身份验证失效了,Session无法跨页,而且登陆的时候...
使用thinkphp做一个后台系统,把session中的id传给header模板 切换多个子账户的时候,发现模板传递的参...