此包已被放弃,不再维护。没有建议替代包。

PHP 库

v0.2.1 2019-01-12 15:34 UTC

This package is auto-updated.

Last update: 2020-02-12 17:59:59 UTC


README

Scrutinizer Code Quality Code Coverage Build Status

为什么?

为了提高我的技能,我在做自己的 EventBus 实现。

安装

composer require blacksmith-project/event-bus

如何使用它?

  • 您的事件需要实现空的接口 \BSP\Event
  • 您的监听器需要实现接口 \BSP\EventListener
  • 扩展 \BSP\EventBus 并在构造函数中添加监听器。

请注意,可能存在多个监听器监听单个事件。

您可以在 tests/Mock 文件夹中查看示例。

现在,您只需要注入您的 EventBus 并发送事件。

示例

public function __construct(EventBus $eventBus)
{
    $this->eventBus = $eventBus
}

public function handle(DoSomething $doSomething): void
{
    // do business logic

    $event = new SomethingDone();

    $this->eventBus->send($event);
}