ThinkPHP3.2.2的插件控制器功能简述


Posted in PHP onJuly 09, 2014

ThinkPHP从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

需要注意的是:目前插件控制器仅支持模块的插件控制器访问,尚不支持全局的公共插件。

PHP 相关文章推荐
php设计模式 Chain Of Responsibility (职责链模式)
Jun 26 PHP
php数组函数序列之array_unshift() 在数组开头插入一个或多个元素
Nov 07 PHP
解析使用ThinkPHP应该掌握的调试手段
Jun 20 PHP
PHP生成二维码的两个方法和实例
Jul 01 PHP
本地计算机无法启动Apache故障处理
Aug 08 PHP
php实现utf-8转unicode函数分享
Jan 06 PHP
避免Smarty与CSS语法冲突的方法
Mar 02 PHP
yii2 modal弹窗之ActiveForm ajax表单异步验证
Jun 13 PHP
php 在字符串指定位置插入新字符的简单实现
Jun 28 PHP
php使用PDO事务配合表格读取大量数据插入操作实现方法
Feb 16 PHP
PDO::exec讲解
Jan 28 PHP
PHP实现给定一列字符,生成指定长度的所有可能组合示例
Jun 22 PHP
PHP 只允许指定IP访问(允许*号通配符过滤IP)
Jul 08 #PHP
php中出现空白页的原因及解决方法汇总
Jul 08 #PHP
php之Smarty模板使用方法示例详解
Jul 08 #PHP
高性能PHP框架Symfony2经典入门教程
Jul 08 #PHP
Thinkphp的volist标签嵌套循环使用教程
Jul 08 #PHP
PHP实现生成透明背景的PNG缩略图函数分享
Jul 08 #PHP
PHP的error_reporting错误级别变量对照表
Jul 08 #PHP
You might like
一个用mysql_odbc和php写的serach数据库程序
2006/10/09 PHP
php的一些小问题
2010/07/03 PHP
那些年一起学习的PHP(三)
2012/03/22 PHP
php遍历数组的4种方法总结
2014/07/05 PHP
详解PHP中的状态模式编程
2015/08/11 PHP
php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)
2016/11/16 PHP
php爬取天猫和淘宝商品数据
2018/02/23 PHP
ExtJs之带图片的下拉列表框插件
2010/03/04 Javascript
jquery $.each() 使用小探
2013/08/23 Javascript
编写js扩展方法判断一个数组中是否包含某个元素
2013/11/08 Javascript
Jquery EasyUI中弹出确认对话框以及加载效果示例代码
2014/02/13 Javascript
JS下载文件|无刷新下载文件示例代码
2014/04/17 Javascript
jquery实现上传文件大小类型的验证例子(推荐)
2016/06/25 Javascript
利用imgareaselect辅助后台实现图片上传裁剪
2017/03/02 Javascript
从零开始学习Node.js系列教程四:多页面实现数学运算的client端和server端示例
2017/04/13 Javascript
Jquery-data的三种用法
2017/04/18 jQuery
vue.js实现备忘录功能的方法
2017/07/10 Javascript
js学习总结之dom2级事件基础知识详解
2017/07/27 Javascript
jquery在vue脚手架中的使用方式示例
2017/08/29 jQuery
ExtJs整合Echarts的示例代码
2018/02/27 Javascript
解决在vue项目中webpack打包后字体不生效的问题
2018/09/01 Javascript
express + jwt + postMan验证实现持久化登录
2019/06/05 Javascript
layui的布局和表格的渲染以及动态生成表格的方法
2019/09/18 Javascript
pygame学习笔记(4):声音控制
2015/04/15 Python
python bottle框架支持jquery ajax的RESTful风格的PUT和DELETE方法
2017/05/24 Python
Scrapy框架CrawlSpiders的介绍以及使用详解
2017/11/29 Python
flask-restful使用总结
2018/12/04 Python
Django使用AJAX调用自己写的API接口的方法
2019/03/06 Python
python自定义函数实现最大值的输出方法
2019/07/09 Python
python 实现方阵的对角线遍历示例
2019/11/29 Python
python接口自动化之ConfigParser配置文件的使用详解
2020/08/03 Python
新西兰演唱会和体育门票网站:Ticketmaster新西兰
2017/10/07 全球购物
教师师德承诺书
2014/03/26 职场文书
2015年党员个人剖析材料
2014/12/18 职场文书
2015年大学班主任工作总结
2015/04/30 职场文书
2015暑假打工实践报告
2015/07/13 职场文书