Charlie Charlie - 8 months ago 43
PHP Question

Zend Framework : Detecting which controller or page you are using / are on

I'm trying to detect which controller I'm using or what controller I'm on and then change my menu accordingly to the page I'm on.

( Make a selection in the menu so the user can see were he is on the page! )

I really don't know what to write to check what it's using...

<? if($this->url(array("controller" => "index", "action" => "index"), null, true)) {

I tried that but that stuff didn't work at all, I know it's the wrong thing to use, so please help me =D


You can get Controller and Action name from the current Request object with getControllerName() and getActionName().

From your controller:

$controller = $this->getRequest()->getControllerName();
$action = $this->getRequest()->getActionName();
// set to View

From a ViewHelper

$front = Zend_Controller_Front::getInstance();
$controller = $front->getRequest()->getControllerName();
$action = $front->getRequest()->getActionName();
// do something with it