Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
481 views
in Technique[技术] by (71.8m points)

zend framework2 - How to get parameters from Route in ZF2 module? (class Module, function onBootstrap())

In controller I can get parameters from route using $this->params()->fromRoute('param1')
How can I do that in Module OnBootstrap() function?

namespace MyModule;

use ZendEventManagerEventInterface;

class Module
{
    public function onBootstrap(EventInterface $event)
    {
        // here I need to get parameter from route
    }
}
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

As user2257808 said in his comment, onBootstrap is called before routing takes place, so there is not any RouteMatch to get. He suggested attaching to EVENT_RENDER, that may be too late in your case.

I would do something like this, attaching to MvcEvent::EVENT_DISPATCH.

MyModuleModule.php

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

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

    }
}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...