10

我想获取处理当前操作的当前控制器名称。但在我的情况下,我将在我的布局文件中的 main.php 中查找当前控制器

这是我的目录结构的小视图,让您了解我的布局文件在哪里以及我将在其中放置代码以搜索我的控制器名称的文件

  • /受保护
  • /主题
    • /我的布局
      • /布局
        • 主文件
        • column1.php
        • column2.php
      • /地点
        • 索引.php

这可能吗?我正在尝试以下代码,但我无法获得我当前的控制器名称......

echo Yii::app()->controller->getId;
echo Yii:app()->getController->id;
echo Yii:app()->controller->uniqueID;

谢谢

4

5 回答 5

25

像这样

Yii::app()->controller->id

或者

Yii::app()->getController()->getId()

http://www.yiiframework.com/doc/api/1.1/CApplication#getController-detail

于 2012-03-06T11:38:19.260 回答
13

控制器 ID:

$this->id

这里 $this 指的是控制器。

并获取操作 id :

$this->action->id
于 2012-03-06T10:59:30.763 回答
7

<?php echo $this->getUniqueId();?>

这将显示当前控制器

于 2012-03-06T20:37:49.543 回答
3

您实际上不需要使用静态函数。无论何时在视图(或模板)中,您都可以使用它echo $this->getUniqueId();来获取唯一的控制器 ID。

于 2012-10-01T13:18:16.820 回答
1

Yii2:

Yii::$app->controller->id

(文档:应用程序控制器

于 2017-09-26T15:27:12.800 回答