Я хочу получить текущее имя контроллера, которое обрабатывает текущее действие. но в моем случае я буду искать текущий контроллер в моем main.php в своих файлах макета .
это мое небольшое представление о моей структуре каталогов, чтобы дать вам представление о том, где находятся мои файлы макета и файл, где я буду поместить свои коды в поисках имени моего контроллера
- / защищенный
- / темы
- / mylayout
- / макеты
- main.php
- column1.php
- column2.php
- / сайт
- index.php
Это возможно? im пробовал следующие коды, но я не смог получить свое текущее имя контроллера …
echo Yii::app()->controller->getId; echo Yii:app()->getController->id; echo Yii:app()->controller->uniqueID;
благодаря
<?php echo $this->getUniqueId();?>
это покажет текущий контроллер
Как это
Yii::app()->controller->id
или
Yii::app()->getController()->getId()
http://www.yiiframework.com/doc/api/1.1/CApplication#getController-detail
Идентификатор контроллера:
$this->id
Здесь $ this относится к контроллеру.
И для получения действия id:
$this->action->id
На самом деле вам не требуется использовать статическую функцию. Всякий раз, когда в представлении (или шаблоне) вы можете использовать echo $this->getUniqueId();
для получения уникального идентификатора контроллера.
Yii2:
Yii::$app->controller->id
(Документация: приложение и контроллер )