denosyscore / events
Event dispatching and listener provider components
v0.11.1
2026-11-12 06:22 UTC
Requires
- php: ^8.2
- psr/event-dispatcher: ^1.0
- psr/http-message: ^2.0
Requires (Dev)
- phpstan/phpstan: ^2.1
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
Read-only split. This package is developed in denosyscore/framework under
packages/events. Open issues and pull requests there.
Event dispatching and listener provider components
Installation
composer require denosyscore/events
Quick start
A PSR-14 event dispatcher. It needs no container or configuration.
<?php require __DIR__ . '/vendor/autoload.php'; use Denosys\Events\Dispatcher; use Denosys\Events\ListenerProvider; final class OrderPlaced { public function __construct(public readonly int $orderId) {} } $listeners = new ListenerProvider(); $listeners->addListener(OrderPlaced::class, function (OrderPlaced $event): void { echo "Send receipt for order {$event->orderId}\n"; }); // A PSR-14 dispatcher: any listener provider and any event object. $events = new Dispatcher($listeners); $events->dispatch(new OrderPlaced(1001)); // Send receipt for order 1001
Included Modules
- src/Events/* (legacy namespace)
- src/.php for Denosys\Events\ extracted namespace
Development
composer validate --strict find src -type f -name '*.php' -print0 | xargs -0 -n1 php -l