2013-04-11 64 views
2

我想在重定向時設置查詢參數。我嘗試這樣做:如何使用重定向設置查詢參數()

$this->redirect()->toRoute('login/default', array('action' => 'forgotPassword', 'foo' => 'bar')); 

它重定向到:

/login/forgotPassword 

相反的,我想重定向是:

/login/forgotPassword?foo=bar 

回答

8

查詢參數屬於的第三個參數URL的方法。

$this->redirect()->toRoute(
    'login/default', 
    array(
     'action' => 'forgotPassword' 
    ), 
    array('query' => array(
     'foo' => 'bar' 
    )) 
) 
+0

不工作。仍然去/登錄/忘記密碼 – 2013-04-11 10:26:46

+0

對不起,忽略我的最後一條評論。有用。今天我真的很累:P – 2013-04-11 10:29:30

0

另外。

要重定向「訪問」或登錄,形成可以使用:

if (!$controller->identity()) { 
    $sm = $controller->getServiceLocator(); 
    $router = $sm->get('router'); 
    $request = $sm->get('request'); 

    $routeMatch = $router->match($request); 

    $controller->redirect()->toRoute('login', array(), 
     array('query' => 
       array('redir' => $routeMatch->getMatchedRouteName()))); 
} 

網址將被: /登錄/導向=電流路徑

相關問題