代码之家  ›  专栏  ›  技术社区  ›  koenHuybrechts

如何访问Zend视图帮助器中URL变量的值?

  •  2
  • koenHuybrechts  · 技术社区  · 16 年前

    我想访问视图帮助器中特定变量(在URL中)的值。我该怎么做?

    我可以使用:zend_controller_front::getInstance()->getRequest()->getControllerName();获取控制器名称,但我不知道该变量…

    事先谢谢!

    2 回复  |  直到 15 年前
        1
  •  2
  •   Decent Dabbler    16 年前

    最明显的是:

    // will retrieve any param set in the request (might even be route param, etc)
    Zend_Controller_Front::getInstance()->getRequest()->getParam( 'someParam' );
    
    // $_POST
    Zend_Controller_Front::getInstance()->getRequest()->getPost( 'somePostParam' );
    
    // $_GET
    Zend_Controller_Front::getInstance()->getRequest()->getQuery( 'someQueryStringParam' );
    

    还可以查看API文档:
    General
    Zend_Controller_Request_Http (1.10)

        2
  •  4
  •   PatrikAkerstrand    16 年前

    您可以从 Zend_Controller_Front :

    abstract class App_View_Helper_Abstract extends Zend_View_Helper_Abstract
    {
       /**
        * @var Zend_Controller_Front
        */
       private $_frontController;
    
       /**
        * Convience function for getting a request parameter from the request
        * object in a view helper
        * @param string $name The name of the request parameter
        * @param mixed $default The value to return if $name is not defined in the
        * request
        * @return mixed The value of parameter $name in the request object,
        * or $default if $name is not defined in the request
        */
       public function getRequestVariable ($name, $default = null)
       {
          return $this->getRequest()->getParam($name, $default);
       }
    
       /**
        *
        * @return Zend_Controller_Request_Abstract
        */
       public function getRequest ()
       {
          return $this->getFrontController()->getRequest();
       }
    
       /**
        * @return Zend_Controller_Front
        */
       private function getFrontController ()
       {
          if ( empty($this->_frontController) )
          {
             $this->_frontController = Zend_Controller_Front::getInstance();
          }
          return $this->_frontController;
       }
    }
    

    现在您可以使用 getRequestVariable -方法从所有视图帮助程序扩展应用程序视图帮助程序摘要

    推荐文章