配置zend模块使用完成

时间:2013-05-09 23:21:41

标签: php zend-framework zend-framework2

我正在尝试在zend中配置module.php的finish函数,从我的理解你需要配置某种类型的监听器(我认为在bootstrap中)将调用finish函数然后我可以执行代码它完成了用户请求。

有人可以提供一些示例代码来设置模块在完成用户请求后调用完成。

谢谢!

2 个答案:

答案 0 :(得分:6)

您可以使用onBootstrap的{​​{1}}方法执行此操作,如下所示:

Module.php

然后在public function onBootstrap(MvcEvent $e) { $em = $e->getApplication()->getEventManager(); $em->attach(\Zend\Mvc\MvcEvent::EVENT_FINISH, array($this, 'doSomething')); } 中定义doSomething的函数,如下所示:

Module.php

如果您在同一事件上附加了多个侦听器,您还可以为要执行的回调函数添加一些优先级:

public function doSomething(MvcEvent $e)
{
    // your code goes here
}

优先级较高的值最早执行。 (默认优先级为1,允许使用否定优先级。)

答案 1 :(得分:2)

基本的想法是为活动附加一个听众,因为你正确地指出了这个地方是onBootstrap类的Module方法。以下内容应该让你开始...

public function onBootstrap(MvcEvent $e)
{
    $e->getApplication()->getEventManager()->attach(MvcEvent::EVENT_FINISH, function ($e) {        
        // do something...
    });
}