不可变事件分派器
编辑本页警告:您正在浏览的文档欧宝官网下载appob娱乐下载Symfony 4.4,现已不再维护。
读本页的更新版本用于Syob娱乐下载mfony 6.2(当前稳定版本)。
不可变事件分派器
的ImmutableEventDispatcher锁定或冻结事件调度程序。调度程序无法注册新的侦听器或订阅者。
的ImmutableEventDispatcher
获取具有所有侦听器和订阅者的另一个事件分派器。不可变分派器只是这个原始分派器的代理。
要使用它,首先创建一个法线EventDispatcher
Dispatcher和注册一些监听器或订阅者:
1 2 3 4 5 6 7 8
使用ob娱乐下载\组件\EventDispatcher\EventDispatcher;$调度程序=新EventDispatcher ();$调度程序->addListener (“foo.action”,函数($事件){/ /……});/ /……
现在,把它注入到ImmutableEventDispatcher
:
1 2 3 4
使用ob娱乐下载\组件\EventDispatcher\ImmutableEventDispatcher;/ /……$immutableDispatcher=新ImmutableEventDispatcher ($调度程序);
您需要在项目中使用这个新的调度程序。
如果你试图执行一个修改dispatcher的方法(例如。addListener ()
),一个BadMethodCallException
抛出。
此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。