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 相关文章推荐
PHP5中MVC结构学习
Oct 09 PHP
简化php模板页面中分页代码的解析
Feb 06 PHP
如何用php生成扭曲及旋转的验证码图片
Jun 07 PHP
浅析php header 跳转
Jun 17 PHP
使用PHP curl模拟浏览器抓取网站信息
Oct 28 PHP
php通过sort()函数给数组排序的方法
Mar 18 PHP
PHP 在数组中搜索给定的简单实例 array_search 函数
Jun 13 PHP
Laravel5.1自定义500错误页面示例
Oct 09 PHP
php中序列化与反序列化详解
Feb 13 PHP
YII框架常用技巧总结
Apr 27 PHP
关于laravel模板中生成URL的几种模式总结
Oct 18 PHP
Laravel 6.2 中添加了可调用容器对象的方法
Oct 22 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 引用(&amp;)详解
2009/11/20 PHP
PHP中10个不常见却非常有用的函数
2010/03/21 PHP
PHP7.0安装笔记整理
2015/08/28 PHP
arguments对象
2006/11/20 Javascript
调试Javascript代码(浏览器F12及VS中debugger关键字)
2013/01/25 Javascript
使用JavaScript 实现对象 匀速/变速运动的方法
2013/05/08 Javascript
js简单实现根据身份证号码识别性别年龄生日
2013/11/29 Javascript
深入理解JavaScript系列(35):设计模式之迭代器模式详解
2015/03/03 Javascript
jquery仿百度经验滑动切换浏览效果
2015/04/14 Javascript
jquery实现表单验证并阻止非法提交
2015/07/09 Javascript
jQuery自定义图片上传插件实例代码
2017/04/04 jQuery
jQuery实现table中两列CheckBox只能选中一个的示例
2017/09/22 jQuery
vue移动端路由切换实例分析
2018/05/14 Javascript
Angular4 Select选择改变事件的方法
2018/10/09 Javascript
vue 双向数据绑定的实现学习之监听器的实现方法
2018/11/30 Javascript
vue基础之v-bind属性、class和style用法分析
2019/03/11 Javascript
Element-UI中关于table表格的那些骚操作(小结)
2019/08/15 Javascript
使用JS实现动态时钟
2020/03/12 Javascript
vue实现移动端返回顶部
2020/10/12 Javascript
Python面向对象编程中的类和对象学习教程
2015/03/30 Python
在Django的通用视图中处理Context的方法
2015/07/21 Python
Python selenium如何设置等待时间
2016/09/15 Python
python实现windows壁纸定期更换功能
2019/01/21 Python
python利用wx实现界面按钮和按钮监听和字体改变的方法
2019/07/17 Python
python3中pip3安装出错,找不到SSL的解决方式
2019/12/12 Python
pytorch实现特殊的Module--Sqeuential三种写法
2020/01/15 Python
python+opencv实现移动侦测(帧差法)
2020/03/20 Python
HTML5移动端开发遇见的东西
2019/10/11 HTML / CSS
internal修饰符起什么作用
2013/12/16 面试题
入党转预备思想汇报
2014/01/07 职场文书
向国旗敬礼活动总结
2014/09/27 职场文书
酒店人事主管岗位职责
2015/04/11 职场文书
2015年设计师个人工作总结
2015/04/25 职场文书
详解Python 3.10 中的新功能和变化
2021/04/28 Python
python 如何在list中找Topk的数值和索引
2021/05/20 Python
Oracle表空间与权限的深入讲解
2021/11/17 Oracle