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下用GD生成生成缩略图的两个选择和区别
Apr 17 PHP
深入解析php模板技术原理【一】
Jan 10 PHP
PHP备份/还原MySQL数据库的代码
Jan 06 PHP
PHP的5个安全措施小结
Jul 17 PHP
php中数组首字符过滤功能代码
Jul 31 PHP
PHP创建桌面快捷方式的实例代码
Feb 17 PHP
PDO预处理语句PDOStatement对象使用总结
Nov 20 PHP
php实现基于微信公众平台开发SDK(demo)扩展的方法
Dec 22 PHP
PHP递归创建多级目录
Nov 05 PHP
php自动提交表单的方法(基于fsockopen与curl)
May 09 PHP
微信接口生成带参数的二维码
Jul 31 PHP
php经典趣味算法实例代码
Jan 21 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采集时被封ip的解决方法
2010/08/29 PHP
php入门学习知识点一 PHP与MYSql连接与查询
2011/07/14 PHP
php根据年月获取当月天数及日期数组的方法
2016/11/30 PHP
老生常谈ThinkPHP中的行为扩展和插件(推荐)
2017/05/05 PHP
PHP支付宝当面付2.0代码
2018/12/21 PHP
PHP PDOStatement::nextRowset讲解
2019/02/01 PHP
使用Javascript简单实现图片无缝滚动
2014/12/05 Javascript
使用CoffeeScrip优美方式编写javascript代码
2015/10/28 Javascript
JQuery解析XML数据的几个简单实例
2016/05/18 Javascript
[原创]JS基于FileSaver.js插件实现文件保存功能示例
2016/12/08 Javascript
JS实现的随机排序功能算法示例
2017/06/09 Javascript
javascript 玩转Date对象(实例讲解)
2017/07/11 Javascript
vue结合axios与后端进行ajax交互的方法
2018/07/06 Javascript
浅析JS中什么是自定义react数据验证组件
2018/10/19 Javascript
JS获取今天是本月第几周、本月共几周、本月有多少天、是今年的第几周、是今年的第几天的示例代码
2018/12/05 Javascript
vue源码中的检测方法的实现
2019/09/26 Javascript
微信小程序转发事件实现解析
2019/10/22 Javascript
基于vue-cli3创建libs库的实现方法
2019/12/04 Javascript
JavaScript设计模式--简单工厂模式实例分析【XHR工厂案例】
2020/05/23 Javascript
python33 urllib2使用方法细节讲解
2013/12/03 Python
python搜索指定目录的方法
2015/04/29 Python
使用Python生成url短链接的方法
2015/05/04 Python
使用Python脚本将Bing的每日图片作为桌面的教程
2015/05/04 Python
Django 导出 Excel 代码的实例详解
2017/08/11 Python
Python使用smtp和pop简单收发邮件完整实例
2018/01/09 Python
CentOS 7 安装python3.7.1的方法及注意事项
2018/11/01 Python
python中update的基本使用方法详解
2019/07/17 Python
详解pyinstaller selenium python3 chrome打包问题
2019/10/18 Python
python中有函数重载吗
2020/05/28 Python
全球性的在线鞋类品牌:Public Desire
2019/04/03 全球购物
Java TransactionAPI (JTA) 主要包含几部分
2012/12/07 面试题
预备党员政审材料
2014/02/04 职场文书
劲霸男装广告词
2014/03/21 职场文书
党员教师四风自我剖析材料
2014/09/30 职场文书
大学生助学金感谢信
2015/01/21 职场文书
职场干货:简历中的自我评价应该这样写!
2019/05/06 职场文书