首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取Symfony2上每个监听器的列表

获取Symfony2上每个监听器的列表
EN

Stack Overflow用户
提问于 2013-08-25 19:48:20
回答 2查看 5.4K关注 0票数 11

我想得到在我的应用程序上注册的每个监听器的列表以及他们的优先级。该列表应该包含我自己的侦听器,以及Symfony core或其他已启用的捆绑包已经注册的侦听器。

这有可能吗?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2016-02-19 13:17:08

如果你不想写代码在你的网站上显示它,你可以只使用CLI:

代码语言:javascript
复制
php app/console debug:event-dispatcher
票数 11
EN

Stack Overflow用户

发布于 2013-08-25 22:50:02

您可以从容器中获取event dispatcher,并使用getListeners函数查看事件。控制器中的示例

代码语言:javascript
复制
$evd = $this->get('event_dispatcher');
$listeners = $evd->getListeners();

描述

代码语言:javascript
复制
/**
 * Gets the listeners of a specific event or all listeners.
 *
 * @param string $eventName The name of the event
 *
 * @return array The event listeners for the specified event, or all event listeners by event name
 */
public function getListeners($eventName = null);

小心,原理有自己的事件调度器。

代码语言:javascript
复制
/** @var $em EntityManager */
$em = $this->getDoctrine()->getManager();
$evd = $em->getEventManager();
$listeners = $evd->getListeners();
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18428656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档