10

現在のアクションを処理する現在のコントローラー名を取得したい。しかし、私の場合は、レイアウト ファイルの main.php で現在のコントローラーを探します

これは私のディレクトリ構造の小さなビューで、レイアウト ファイルと、コントローラ名の検索でコードを配置するファイルがどこにあるかを示しています。

  • /保護された
  • /テーマ
    • /mylayout
      • /レイアウト
        • main.php
        • column1.php
        • column2.php
      • /サイト
        • index.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

実際には static 関数を使用する必要はありません。ビュー (またはテンプレート) ではいつでもecho $this->getUniqueId();、一意のコントローラー ID を取得するために使用できます。

于 2012-10-01T13:18:16.820 に答える
1

Yii2:

Yii::$app->controller->id

(ドキュメンテーション:アプリケーションコントローラー)

于 2017-09-26T15:27:12.800 に答える