rmk / event-dispatcher
PSR-14 event dispatcher.
v2.1.0
2022-09-18 09:59 UTC
Requires
- php: ^7.4 || ^8.0
- psr/event-dispatcher: ^1.0
- rmk/callback-resolver: ^1.0
- rmk/collections: ^1.0
Requires (Dev)
- phpunit/phpunit: ^9.1
- roave/security-advisories: dev-master
This package is auto-updated.
Last update: 2024-04-18 13:46:43 UTC
README
Simple PSR-14 event dispatcher.
Examples
Simple attach and trigger an event listener:
<?php class MyEventClassName implements \Rmk\Event\EventInterface { use \Rmk\Event\Traits\EventTrait; } /** @var Rmk\CallbackResolver\CallbackResolver $resolver */ $resolver = MyCallbackResolverFactory::create(); $listenerProvider = new Rmk\Event\ListenerProvider($resolver); // Add event listener for MyEventClassName events (can add second parameter for integer priority): $listenerProvider->addListener(function (MyEventClassName $event) { // do something with the event object }); $eventDispatcher = new Rmk\Event\EventDispatcher($listenerProvider); /* Can use the following arguments for the event constructor: 1. Emitter object - the object who emits the event 2. Array with event parameters 3. Boolean value if is stopped (by default false) */ $eventDispatcher->dispatch(new MyEventClassName());