phpgears/ event-symfony-messenger
基于 Symfony 事件调度器的事件总线实现
0.2.1
2019-10-05 13:26 UTC
Requires
- php: ^7.1
- phpgears/event: ~0.3.1
- symfony/messenger: ^4.3
Requires (Dev)
- brainmaestro/composer-git-hooks: ^2.1
- friendsofphp/php-cs-fixer: ^2.0
- infection/infection: ^0.9
- phpmd/phpmd: ^2.0
- phpstan/extension-installer: ^1.0
- phpstan/phpstan: ~0.11.12
- phpstan/phpstan-deprecation-rules: ~0.11.2
- phpstan/phpstan-strict-rules: ~0.11.1
- phpunit/phpunit: ^7.0|^8.0
- povils/phpmnd: ^2.0
- roave/security-advisories: dev-master
- sebastian/phpcpd: ^4.0
- squizlabs/php_codesniffer: ^3.0
- thecodingmachine/phpstan-strict-rules: ~0.11.2
This package is auto-updated.
Last update: 2024-09-13 04:06:33 UTC
README
基于 Symfony Messenger 的事件总线
使用 Symfony Messenger 实现的事件总线
安装
Composer
composer require phpgears/event-symfony-messenger
用法
需要 composer 自动加载文件
require './vendor/autoload.php';
事件总线
use Gears\Event\Symfony\Messenger\EventHandlerLocator; use Gears\Event\Symfony\Messenger\EventBus; use Symfony\Component\Messenger\MessageBus; use Symfony\Component\Messenger\Middleware\HandleMessageMiddleware; $eventToHandlerMap = []; /* * IMPORTANT! Events can go through messageBus without being handled, set second argument * on Symfony's EventHandlerLocator constructor ($allowNoHandlers) to true */ $handlerLocator = new EventHandlerLocator($eventToHandlerMap, true); $messengerBus = new MessageBus([new HandleMessageMiddleware($handlerLocator)]); $eventBus = new EventBus($messengerBus); /** @var \Gears\Event\Event $event */ $eventBus->handle($event);
贡献
发现错误或有功能请求? 请创建一个新问题。在创建之前请查看现有问题。
见文件 CONTRIBUTING.md
许可
见源代码中包含的文件 LICENSE 以获取许可条款的副本。