首页 > 解决方案 > 在 laravel 应用程序上,无论事件被触发多少次,都可以只调用一次侦听器吗?

问题描述

我认为标题说明了一切.. 在 Laravel 应用程序中,我在代码中多次分派一个事件(或多个事件)并为它们有一个订阅者,但我希望它只处理一次,无论多少次在流中触发事件。

有什么明确的方法可以做到这一点,或者我需要一个 ..singleton 类或类似的东西?

谢谢

标签: phplaravel

解决方案


您可以Event::forget('YourEvent');在第一次调度后在订阅者中取消监听事件。

缺点是该事件的所有其他侦听器也将被删除。


推荐阅读