在Yii2里面怎么获取当前访问页面的Controller,Action

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Yii2里面怎么获取当前访问页面的Controller,Action相关的知识,希望对你有一定的参考价值。

参考技术A Yii::$app->controller->getRoute();==>可以直接拿到:site/index
Yii::$app->controller->id ;可以直接拿到:site
Yii::$app->controller->action->id;==>可以直接拿到:index
参考技术B $this->action->id 参考技术C 我也忘记了,不过我可以告诉你方法
你var_dump(Yii::$app);
然后在打印出来的内容中搜索当前页面的controller 和action
比如 site/index
搜索出来后,之后你懂得,我不废话了
另:肯定有的,我用过!本回答被提问者和网友采纳

java保存到session里,新的JSP页面怎么获取不到值

我想在后台JAVA 值保存SESSION 里,然后在后台打开新的print.jsp页面(不覆盖旧的页面),再在print.jsp里request.getAttribut(“value”),但是为什么是空值.
我想是不是新打开的jsp页面与原来的页面是不同的,所以新的页面里的session与旧的页面里的session是不相同的?
求大神们帮帮忙。比较急

java中设置session的值:
session.setAttribute("username",username);
session.setAttribute("password",password);
jsp中可以这么获取session的值:
username=session.getAttribute("username");
password=session.getAttribute("password");
参考技术A request.getAttribut("value")这个也不是取session啊,request与session楼主都没搞清楚啊
你的print.jsp页面是怎么打开的,重定向还是转发啊??追问

var appWindow = encodeURI(window.open('./webpage/print.jsp?'));

Extjs 打开新的页面

追答

这种方式有可能造成session丢失,建议不要再open的页面去session

参考技术B 你存到session中
不应该是
session.getAttribut(“value”)

这样吗?
request.getAttribut(“value”)当然取不到了。
参考技术C 记得是sessionScope. 来取值。 参考技术D 直接用session.getAttribut("value");

以上是关于在Yii2里面怎么获取当前访问页面的Controller,Action的主要内容,如果未能解决你的问题,请参考以下文章

yii2项目实战-访问控制过滤器ACF讲解

yii2 判断一个url用户是不是有权限访问

如何在vue里面访问php

如何获取 yii2 select2 小部件的选定选项的值

yii2高级框架怎么整合前台html页面

iOS获取当前页面的第一响应者