问题
I want to get the current controller name that handles the current action. but the in my case I will look for the current controller in my main.php in my layout files.
this is my small view of my directory structure to give you an idea where is my layout files and the file where i will put my codes in searching of my controller name
- /protected
- /themes
- /mylayout
- /layouts
- main.php
- column1.php
- column2.php
- /site
- index.php
Is this possible? im trying the following codes but i failed to get my current controller name...
echo Yii::app()->controller->getId;
echo Yii:app()->getController->id;
echo Yii:app()->controller->uniqueID;
thanks
回答1:
<?php echo $this->getUniqueId();?>
this will show current controller
回答2:
Like this
Yii::app()->controller->id
or
Yii::app()->getController()->getId()
http://www.yiiframework.com/doc/api/1.1/CApplication#getController-detail
回答3:
Controller Id :
$this->id
Here $this refers to controller.
And For getting action id :
$this->action->id
回答4:
You're not actually required to use the static function. Whenever in a view( or template) you can use echo $this->getUniqueId();
to get the unique controller ID.
回答5:
Yii2:
Yii::$app->controller->id
(Documentation: Application and Controller)
来源:https://stackoverflow.com/questions/9582237/getting-current-controller-id-in-yii