使用Zend Framework时如何访问URL中定义的变量?

时间:2010-06-02 12:51:32

标签: php zend-framework routing

我阅读了文档,但是没有看到如何在$_POST['var']

的传统PHP样式中使用变量的示例

我很确定我的网址是合法的:

domain.com/module/controller/action/var/value/

以上述为例:

$var无效

$_POST['var']无效

怎么做?

2 个答案:

答案 0 :(得分:4)

zend controller's documentation page中所示,您可以检索如下参数:

public function userinfoAction()
{
    $request = $this->getRequest();
    $username = $request->getParam('username');

    $username = $this->_getParam('username');
}

您还应该注意request documentation个州:

  

为了完成一些工作,getParam()实际上从多个来源检索。按优先顺序,这些包括:通过setParam()GET参数设置的用户参数,以及最后POST个参数。通过此方法提取数据时请注意这一点。

     

如果您只想从setParam()设置的参数中提取,请使用getUserParam()。   此外,从1.5.0开始,您可以锁定将搜索哪些参数源。 setParamSources()允许您指定一个空数组或一个数组,其中包含一个或多个值'_GET'或'_POST',指示允许哪些参数源(默认情况下,两者都是允许的);如果您希望仅限制访问“_GET”,请指定setParamSources(array('_GET'))

答案 1 :(得分:2)

$this->_request->getParam('paramName', $defaultValueToReturnIfParamIsNotSet);