如何从ZF2模块中的Route获取参数? (类Module,函数onBootstrap())

时间:2013-04-25 20:01:13

标签: zend-framework2

在控制器中我可以使用$this->params()->fromRoute('param1')来从路线获取参数 我怎么能在Module OnBootstrap()函数中做到这一点?     

namespace MyModule;

use Zend\EventManager\EventInterface;

class Module
{
    public function onBootstrap(EventInterface $event)
    {
        // here I need to get parameter from route
    }
}

1 个答案:

答案 0 :(得分:12)

正如user2257808在他的评论中所说,onBootstrap在路由发生之前被调用,因此没有任何RouteMatch可以获得。他建议加入EVENT_RENDER,这可能为时已晚。

我会做这样的事情,附加到MvcEvent::EVENT_DISPATCH

<强> MyModule的\ Module.php     

class Module {
    public function onBootstrap(MvcEvent $e) {

        $e->getApplication()->getEventManager()->attach(MvcEvent::EVENT_DISPATCH,
            function($e){
               var_dump($e->getRouteMatch());
                exit;
            }
         );

    }
}
相关问题