YII, How to get current controller name and action name

To get current controller name use this code :

<?php
$controllerId = Yii::app()->controller->id;
//or
$controllerId = $this->getId();

?>

To get current action name/id being executed, if you are inside beforeAction() or afterAction(), use the received CAction argument

<?php
//inside beforeAction or afterAction
public function beforeAction($action)
{
$actionId = $action->id;
...
?>

or just elsewhere inside your controller

<?php
$actionId = $this->getAction()->getId();
?>

To get name of currently called controller action anywhere in the code you can use :

<?php

print CController::getAction()->id;


?>

2 comments

Leave a comment

Your email address will not be published. Required fields are marked *