2015-01-06 15:33:34 25903次浏览 3条回答 6 悬赏 0 金钱

在控制器中和在模板中得到当前的controller和action,应该怎么写

网上的写法全是1.x版的,放在2.0版本中不正确

最佳答案

  • 小伙儿 发布于 2015-01-06 15:37 举报

    在 控制器 里面

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

    在 视图 里面

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

    详见: http://blog.sina.com.cn/s/blog_88a65c1b0101j6aa.html

    3 条回复
    回复于 2015-01-06 16:20 回复

    为什么我这样写不对呢,要在Yii前加\才对:\Yii::$app->controller->id

    回复于 2015-09-21 16:06 回复

    你这样写错了 应该是这样写的
    Yii::app ()->controller->id;
    Yii::app ()->controller->action->id;

    回复于 2015-12-18 20:14 回复

    你这是1版本的写法

  • 回答于 2015-01-06 18:13 举报

    在 控制器 里面 var_dump($this->id, $this->action->id);

    在 视图 里面 var_dump($this->context->id, $this->context->action->id);

    , , , 觉得很赞
  • 回答于 2017-08-11 23:24 举报
    Yii::$app->controller->id
    $this->context->id
    

    这两种方法在视图里获取控制器名称为什么都带了模块名:admin/tag

    我的模块是 admin,控制器是 tag

    请问如何正确获取到 tag

您需要登录后才可以回答。登录 | 立即注册
tgw2000
助理

tgw2000

注册时间:2014-10-15
最后登录:2017-11-11
在线时长:10小时35分
  • 粉丝2
  • 金钱20
  • 威望0
  • 积分120

热门问题