使用Zend Framework时,我想在我的应用程序/模块上附加一个事件,以便在每个分解事件上调用此函数。这是我的代码:Zend Framework将自定义事件附加到共享事件管理器
类模块 { 公共职能getConfig(){ 回报 包括DIR。 '/../config/module.config.php'; }
public function onBootstrap(MvcEvent $event)
{
$application = $event->getApplication();
$serviceManager = $application->getServiceManager();
$sessionManager = $serviceManager->get(SessionManager::class);
// Get event manager.
$eventManager = $event->getApplication()->getEventManager();
$sharedEventManager = $eventManager->getSharedManager();
// Register the event listener method onDispatch
$sharedEventManager->attach(AbstractActionController::class,
MvcEvent::EVENT_DISPATCH, [$this, 'onDispatch'], 100);
}
public function onDispatch(MvcEvent $event)
{
// Will perform application wide ACL control based on controller,
// action and user data.
}
}
出于某种原因,我onDispatch不会被调用,即使应用程序的屏幕被加载。
不知道我错过了什么。据我所知,我需要使用共享事件管理器对整个应用程序有效。
帮助赞赏。