从控制器本身获取控制器名称

时间:2011-07-15 08:07:30

标签: zend-framework

可能是一个荒谬的问题,但有没有办法从控制器类本身获取实际的控制器名称?

class SomeController extends Zend_Controller_Action {
    public function init() {

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

2 个答案:

答案 0 :(得分:11)

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

答案 1 :(得分:5)

您可以使用getControllerName()从请求中获取控制器名称。要获得请求(没有单身人士),您可以执行以下操作:

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