gpt4 book ai didi

symfony - 教义聆听者与订阅者

转载 作者:行者123 更新时间:2023-12-02 20:31:51 25 4
gpt4 key购买 nike

我正在 Symfony2 框架中工作,想知道什么时候会使用 Doctrine 订阅者而不是监听器。教义documentation对于听众来说非常清楚,但对于订阅者来说则相当模糊。 Symfony 的 cookbook entry是类似的。

最佳答案

从我的角度来看,只有一个主要区别:

  • 监听器已注册并指定其监听的事件。
  • 订阅者有一个方法告诉调度程序它正在监听哪些事件

这看起来可能没什么大区别,但如果您仔细想想,在某些情况下您会想要使用其中一种:

  • 您可以将一个监听器分配给具有不同事件的多个调度程序,因为它们是在注册时设置的。您只需要确保每个方法都在监听器中就位
  • 您可以在运行时更改订阅者注册的事件,甚至在注册订阅者之后也可以通过更改 getSubscribedEvents 的返回值来更改订阅者注册的事件(想象一下您监听一个非常嘈杂的事件并且您只想执行一次某件事)

可能还有其他我不知道的差异!

关于symfony - 教义聆听者与订阅者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11625025/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com