rudra / event-dispatcher
Rudra framework
v25.6
2025-06-27 12:11 UTC
Requires
- php: >=8.3
- rudra/container: v25.6
- rudra/docs: v25.6
This package is auto-updated.
Last update: 2025-06-27 12:13:35 UTC
README
Rudra-EventDispatcher | API
Диспетчер событий
Установка / Install
composer require rudra/event-dispatcher
Использование / Usage
use Rudra\EventDispatcher\EventDispatcherFacade as Dispatcher;
Add listeners / Добавление слушателей
Dispatcher::addListener('app.listener', [AppListener::class, 'onEvent']); Dispatcher::addListener('app.closure', function () { Rudra::config()->set(["closure" => "closure"]); }); Dispatcher::addListener('before', [new TestController(), 'before']);
Dispatches an event / Вызывает событие
Dispatcher::dispatch('app.listener', 123); Dispatcher::dispatch('app.closure'); Dispatcher::dispatch('before');
Attach observer / Прикрепить наблюдателя
Dispatcher::attachObserver("before", [TestController::class, "before"]); Dispatcher::attachObserver("closure", ['closure', function () { Rudra::config()->set(['closure' => "closure"]); }]); ###### $test = new TestController(); Dispatcher::attachObserver("subscriberObject", [$test, "subscriberObject"], 123);
Detach observer / Отсоединить наблюдателя
Dispatcher::detachObserver("before", TestController::class);
Notify the observers / Оповестить наблюдателей
Dispatcher::notify("before"); Dispatcher::notify("closure"); Dispatcher::notify("subscriberObject");