2014-01-10 52 views
1

我有这样的:Zend2:重定向与查询参数?

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

我想以这样的URL来结束:

person/1/edit?bla=1 

换句话说,转换:

'bla'  => '1' 

?bla=1 

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

回答

5

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

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

return $this->redirect() 
    ->toUrl ($url);