Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php ZF2 fromQuery()返回一个空数组_Php_Nginx_Zend Framework2 - Fatal编程技术网

Php ZF2 fromQuery()返回一个空数组

Php ZF2 fromQuery()返回一个空数组,php,nginx,zend-framework2,Php,Nginx,Zend Framework2,我刚刚开始使用Zend framework 2,这似乎是一项简单的任务,但由于某些原因,它不起作用 我试图简单地获取查询参数:controller/action?name=something 我试过使用: $this->params()->fromQuery() $this->plugin('params')->fromQuery(); 我相信两者都是相同的,但是当我设置了参数时,两者都返回空数组 我的路线如下所示: 'users' => arra

我刚刚开始使用Zend framework 2,这似乎是一项简单的任务,但由于某些原因,它不起作用

我试图简单地获取查询参数:
controller/action?name=something

我试过使用:

$this->params()->fromQuery()
$this->plugin('params')->fromQuery();
我相信两者都是相同的,但是当我设置了参数时,两者都返回空数组

我的路线如下所示:

        'users' => array(
            'type' => 'Zend\Mvc\Router\Http\Literal',
            'options' => array(
                'route'    => '/users/search',
                'defaults' => array(
                    'controller' => 'Module\Controller\Users',
                    'action'     => 'search',
                ),
                'may_terminate' => true,
                'child_routes' => array(
                    'query' => array(
                        'type' => 'Query',
                    ),
                ),
            ),   
        ),
知道我做错了什么吗

$this->_request->getParam('name');
我想这会管用的


我想这会有用的。

我想你应该使用Params插件

你可以试试(我是从插件的代码中提取的。$param实际上应该是
null
):

fromQuery()
只是上述内容的一个包装器(请参见第页),但如果这对您不起作用,则可能不会(除非插件没有正确加载或实例化):


我想你应该使用Params插件

你可以试试(我是从插件的代码中提取的。$param实际上应该是
null
):

fromQuery()
只是上述内容的一个包装器(请参见第页),但如果这对您不起作用,则可能不会(除非插件没有正确加载或实例化):


我想,您的nginx配置有问题

只需将
$is_args$args
添加到
位置/
部分:

location / {
    try_files $uri $uri/ /index.php$is_args$args;
}

然后重新启动nginx
sudo/etc/init.d/nginx restart

我想,您的nginx配置有问题

只需将
$is_args$args
添加到
位置/
部分:

location / {
    try_files $uri $uri/ /index.php$is_args$args;
}

然后重新启动未定义的nginx
sudo/etc/init.d/nginx restart

,getParam不是请求对象的一部分,但是我尝试了:
$request=new request()$request->getQuery()
但是没有可用性没有定义,getParam不是request对象的一部分,但是我尝试了:
$request=newrequest()$request->getQuery()
但没有可用的存储库,因此在控制器中我使用了
$this->getRequest()->getQuery()->toArray()
,但没有骰子。我现在想这可能是nginx的配置问题:\n这是可能的,因为您最初尝试使用
$this->params()->fromQuery()真的应该有用。是的,我明天会用它工具,如果解决了问题,我会在这里更新。祝你好运。实际上,我刚刚开始在一个更大的项目中使用ZF2,因此您可以添加到so堆中的任何ZF2技巧都值得赞赏。哦,你刚刚把我推到5000多美元。。。谢谢你,呜呼!谢谢,所以在控制器中我使用了
$this->getRequest()->getQuery()->toArray()
,但没有骰子。我现在想这可能是nginx的配置问题:\n这是可能的,因为您最初尝试使用
$this->params()->fromQuery()真的应该有用。是的,我明天会用它工具,如果解决了问题,我会在这里更新。祝你好运。实际上,我刚刚开始在一个更大的项目中使用ZF2,因此您可以添加到so堆中的任何ZF2技巧都值得赞赏。哦,你刚刚把我推到5000多美元。。。谢谢你,呜呼!谷歌,stackoverflow和你的答案=太好了!;)谷歌,stackoverflow和你的答案=太好了!;)
location / {
    try_files $uri $uri/ /index.php$is_args$args;
}