Yii2使用$this->context获取当前的Module、Controller(控制器)、Action等


Posted in PHP onMarch 29, 2017

使用Yii2的时候,在某些场景和环境下需要获得Yii2目前所处于的module(模型)、Controller(控制器)、Action(方法),以及会调用控制器里面已经定义过的一些公共的方法等.对于这些问题Yii2可以在视图层View中使用$this->context这个对象去获得。

示例:譬如现在(视图层登陆界面)login.php方法下面:

<?php
//得到Yii2的当前的控制器Controller
echo
$this->context->id;
//输出结果:site
//得到Yii2的当前的控制器Action
echo
$this->context->action->id;
//输出结果:login
//得到Yii2的当前的控制器Modules
echo
$this->context->module->id;
//输出结果:basic
 (默认简单的Basic)
//得到Yii2的当前的控制器里面的方法
echo
$this->context->actionHello();
//输出结果:Hello
 World!!!
//此处的actionHello()
 方法为定义在控制器里面的方法(也可以是继承来的)
//所在位置为SiteController里面,用于测试
public
function 
actionHello(){
  return
'Hello World!!!';
}
?>

在控制器里面

$controllerID
= Yii::$app->controller->id;
$actionID
= Yii::$app->controller->action->id;

以上所述是小编给大家介绍的Yii2使用$this->context获取当前的Module、Controller(控制器)、Action等,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
?算你??的 PHP 程式大小
Dec 06 PHP
php中的数组操作函数整理
Aug 18 PHP
frename PHP 灵活文件命名函数 frename
Sep 09 PHP
php中取得文件的后缀名?
Feb 20 PHP
php无限遍历目录示例
Feb 21 PHP
php递归方法实现无限分类实例代码
Feb 28 PHP
php实现的支持断点续传的文件下载类
Sep 23 PHP
php采用curl实现伪造IP来源的方法
Nov 21 PHP
PHP获取当前相对于域名目录的方法
Jun 26 PHP
php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
Jul 06 PHP
phpStudy配置多站点多域名方法及遇到的403错误解决方法
Oct 19 PHP
workerman结合laravel开发在线聊天应用的示例代码
Oct 30 PHP
PHP的反射机制实例详解
Mar 29 #PHP
php面向对象之反射功能与用法分析
Mar 29 #PHP
PHP命名空间namespace的定义方法详解
Mar 29 #PHP
php mysql_list_dbs()函数用法示例
Mar 29 #PHP
php json相关函数用法示例
Mar 28 #PHP
php使用PDO下exec()函数查询执行后受影响行数的方法
Mar 28 #PHP
php事务回滚简单实现方法示例
Mar 28 #PHP
You might like
php中sql注入漏洞示例 sql注入漏洞修复
2014/01/24 PHP
Yii清理缓存的方法
2016/01/06 PHP
PHP二维数组去重实例分析
2016/11/18 PHP
php插件Xajax使用方法详解
2017/08/31 PHP
一个加载js文件的小脚本
2007/06/28 Javascript
设置iframe的document.designMode后仅Firefox中其body.innerHTML为br
2012/02/27 Javascript
13个PHP函数超实用
2015/10/21 Javascript
理解javascript异步编程
2016/01/27 Javascript
浅谈javascript基础之客户端事件驱动
2016/06/10 Javascript
JS中script标签defer和async属性的区别详解
2016/08/12 Javascript
JS中常用的正则表达式
2016/09/29 Javascript
js微信扫描二维码登录网站技术原理
2016/12/01 Javascript
JavaScript中英文字符长度统计方法示例【按照中文占2个字符】
2017/01/17 Javascript
使用json-server简单完成CRUD模拟后台数据的方法
2018/07/12 Javascript
浅谈vue父子组件怎么传值
2018/07/21 Javascript
浅谈React Event实现原理
2018/09/20 Javascript
node.js调用C++函数的方法示例
2018/09/21 Javascript
vuejs数据超出单行显示更多,点击展开剩余数据实例
2019/05/05 Javascript
用Golang运行JavaScript的实现示例
2019/11/25 Javascript
部署vue+Springboot前后端分离项目的步骤实现
2020/05/31 Javascript
微信小程序实现时间戳格式转换
2020/07/20 Javascript
基于JavaScript实现简单抽奖功能代码实例
2020/10/20 Javascript
[02:03]《现实生活中的DOTA2》—林书豪&DOTA2职业选手出演短片
2015/08/18 DOTA
[01:19:46]EG vs Secret 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.21.mp4
2020/07/19 DOTA
浅析Python中的序列化存储的方法
2015/04/28 Python
Python Flask基础教程示例代码
2018/02/07 Python
Python实现的拉格朗日插值法示例
2019/01/08 Python
SmartBuyGlasses丹麦:网上购买名牌太阳镜、眼镜和隐形眼镜
2016/10/01 全球购物
科颜氏美国官网:Kiehl’s美国
2017/01/31 全球购物
三星美国官网:Samsung美国
2017/02/06 全球购物
医学检验专业个人求职信范文
2013/12/04 职场文书
出纳工作岗位责任制
2014/02/02 职场文书
研究生求职自荐书
2014/06/23 职场文书
学习党的群众路线剖析材料
2014/10/09 职场文书
2014年建筑工程工作总结
2014/12/03 职场文书
python如何读取.mtx文件
2021/04/22 Python