Parameters Zend2:使用查询参数重定向?

Parameters Zend2:使用查询参数重定向?,parameters,zend-framework2,Parameters,Zend Framework2,我有这个: $this->redirect()->toRoute( 'edit_person', array( 'controller' => 'person', 'action' => 'edit', 'id' => 1, 'bla' => '1' ) ); 我想以以下url结束: person/1/edit?bla=1 换句话说

我有这个:

$this->redirect()->toRoute(
   'edit_person', 
    array(
        'controller' => 'person',
        'action'     => 'edit',
        'id'         => 1,
        'bla'        => '1'
    )
);
我想以以下url结束:

person/1/edit?bla=1
换句话说,转换为:

'bla'        => '1'


而不是标准参数。有可能吗?

您可以在toRoute函数中添加第三个参数,以便定义查询部分

$url = $this->url ()
    ->fromRoute ('edit_person', [
    'controller' => 'person',
    'action' => 'edit',
    'id' => 1
]) . '?' . http_build_query ([
    'bla' => 1
]);

return $this->redirect ()
    ->toUrl ($url);
$this->redirect()->toRoute(
   'edit_person', 
    array(
        'controller' => 'person',
        'action'     => 'edit',
        'id'         => 1,
    ),
    array(
       'query' => array('bla' => '1'),
    )
);

您可以向toRoute函数添加第三个参数,在其中可以定义查询部分

$this->redirect()->toRoute(
   'edit_person', 
    array(
        'controller' => 'person',
        'action'     => 'edit',
        'id'         => 1,
    ),
    array(
       'query' => array('bla' => '1'),
    )
);