2014-01-28 38 views
1

我在Zend Framework中通過URL傳遞參數時遇到了麻煩。在Zend Framework中通過URL傳遞參數2

例如,我有一個這樣的控制器:

class MyController extends AbstractActionController { 
    public function indexAction() { ... } 
    public function updateAction($id) { ... } 
} 

我想通過這樣的URL訪問更新頁面:http://example.com/mycontroller/update/1

那麼如何通過價值1到控制器?

任何人都可以幫助我嗎?非常感謝。

BTW,我從

'route' => '/[:controller[/:action]]' 

改變默認的路由器

'route' => '/[:controller[/:action[/:id]]]', 

,但它仍然無法正常工作。以下是錯誤消息。

Warning: Missing argument 1 for Module\Controller\MyController::updateAction() call in ...

回答

2

我已經解決了這個問題!

,則應該更換功能如下:

public function updateAction() 
{ 
    $paramName = $this->getEvent()->getRouteMatch()->getParam('id'); 

    // Do something with $paramName 

    return array(); 
} 

有更有的方法來獲得的Zend Framework2參數: How to access route, post, get etc. parameters in Zend Framework 2

+2

'$這個 - > PARAMS() - > fromRoute('身份證');'爲你工作? –

+0

是的,它似乎更簡單。 –