2011-07-15 11 views
7

Puede ser una pregunta ridícula, pero ¿hay alguna manera de obtener el nombre del controlador real de la clase del controlador en sí?Obtener el nombre del controlador del controlador en sí

como

class SomeController extends Zend_Controller_Action { 
    public function init() { 

     $controllerName = $this -> getControllerName(); 
     // And get "Some" as a output 
    } 
} 
+5

como get_class ($ this)? – Rufinus

+0

@Rufinus, exactamente! :) – mrN

Respuesta

11
public function init() { 
    echo Zend_Controller_Front::getInstance()->getRequest()->getControllerName(); 
} 
+0

Guau, parece una gran cantidad de solicitudes. ¿Se suma al rendimiento del sitio web? – mrN

5

Usted puede obtener el nombre del controlador de solicitud utilizando getControllerName(). Para acceder a la solicitud (sin singletons), puede hacer lo siguiente:

public function init() { 
    $controllerName = $this->_request->getControllerName(); 
    // or 
    $controllerName = $this->getRequest()->getControllerName(); 
    // or 
    $controllerName = $this->getFrontController()->getRequest()->getControllerName() 
} 
+0

¡Mejor respuesta! ¡Trabajó para mi! – Abadis

Cuestiones relacionadas