用一个侦听器侦听多个事件?
我正在Symfony2中构建一个具有社交驱动方面的应用程序(用户在网站上执行的许多操作将显示在“新闻提要”样式的列表中供其他人查看)。我已经确定sf2事件调度器/侦听器系统是处理这个问题的最佳方法,但是在尝试配置侦听器以处理许多不同的事件时,我遇到了一些障碍。
我在搜索中找到的(现已过时的)文档似乎表明,在某一时刻,事件侦听器可以在多个事件上注册,但代码已被重构,现在配置如下所示:
config.yml:
services:
social.listener:
class: F\Q\C\N\SocialEventListener
tags:
- { name: kernel.listener, event: onSocialShare }
有没有办法:
- 轻松传递多个事件(类似于工作,但感觉它很快就会变得丑陋且无法维护,从而可能用数十个社交事件堵塞我的配置文件
event: [onSocialShare, onSocialFriend, onSocialCreate]
- 定义要从代码中订阅的事件(如前所述)
- 或者可能是另一个我还没有想到的更好的选择
提前致谢。