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 高手之路(一)
Oct 09 PHP
PHP二维数组的去重问题解析
Jul 17 PHP
php中防止恶意刷新页面的代码小结
Oct 31 PHP
解析PHP自带的进位制之间的转换函数
Jun 08 PHP
浅析php学习的路线图
Jul 10 PHP
php+js iframe实现上传头像界面无跳转
Apr 29 PHP
PHP数组操作类实例
Jul 11 PHP
PHP入门教程之字符串处理技巧总结(转换,过滤,解析,查找,截取,替换等)
Sep 11 PHP
PHP GD库相关图像生成和处理函数小结
Sep 30 PHP
Yii框架结合sphinx,Ajax实现搜索分页功能示例
Oct 18 PHP
thinkPHP框架实现的简单计算器示例
Dec 07 PHP
Laravel框架集合用法实例浅析
May 14 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仿ZOL分页类代码
2008/10/02 PHP
php实现redis数据库指定库号迁移的方法
2015/01/14 PHP
PHP实现验证码校验功能
2017/11/16 PHP
php单元测试phpunit入门实例教程
2017/11/17 PHP
thinkphp5修改view到根目录实例方法
2019/07/02 PHP
Laravel 关联模型-关联新增和关联更新的方法
2019/10/10 PHP
script的async属性以非阻塞的模式加载脚本
2013/01/15 Javascript
jquery实现下拉菜单的二级联动利用json对象从DB取值显示联动
2014/03/27 Javascript
JavaScript通过prototype给对象定义属性用法实例
2015/03/23 Javascript
JS实现弹性漂浮效果的广告代码
2015/09/02 Javascript
详解原生JavaScript实现jQuery中AJAX处理的方法
2016/05/10 Javascript
javascript时间戳和日期字符串相互转换代码(超简单)
2016/06/22 Javascript
老生常谈 关于JavaScript的类的继承
2016/06/24 Javascript
AngularJS入门教程引导程序
2016/08/18 Javascript
Vue.JS入门教程之列表渲染
2016/12/01 Javascript
jQuery简单实现MD5加密的方法
2017/03/03 Javascript
js/jq仿window文件夹框选操作插件
2017/03/08 Javascript
vue父组件中获取子组件中的数据(实例讲解)
2017/09/27 Javascript
使用jquery模拟a标签的click事件无法实现跳转的解决
2018/12/04 jQuery
JS async 函数的含义和用法实例总结
2020/04/08 Javascript
部署vue+Springboot前后端分离项目的步骤实现
2020/05/31 Javascript
Javascript实现打鼓效果
2021/01/29 Javascript
Python中tell()方法的使用详解
2015/05/24 Python
python基于socket实现的UDP及TCP通讯功能示例
2019/11/01 Python
python 导入数据及作图的实现
2019/12/03 Python
Jupyter notebook无法导入第三方模块的解决方式
2020/04/15 Python
keras中模型训练class_weight,sample_weight区别说明
2020/05/23 Python
使用OpenCV校准鱼眼镜头的方法
2020/11/26 Python
大学本科毕业生的自我鉴定范文
2013/11/19 职场文书
中学生班主任评语
2014/01/30 职场文书
女娲补天教学反思
2014/02/05 职场文书
志愿者宣传口号
2014/06/17 职场文书
2015社区六五普法工作总结
2015/04/21 职场文书
施工安全协议书
2016/03/22 职场文书
导游词之广西漓江
2019/11/02 职场文书
2021-4-5课程——SQL Server查询【3】
2021/04/05 SQL Server