jakulov / psr_event
来自 Symfony 事件调度组件的事件接口
dev-master
2016-01-02 00:08 UTC
This package is not auto-updated.
Last update: 2024-09-18 19:04:01 UTC
README
标准化事件以实现所有组件事件实现psr-event之间的兼容性
使用https://github.com/symfony/EventDispatcher的接口来创建标准化的完整方案。
此存储库包含所有与PSR-3相关的接口/类/特性。
请注意,这并不是一个独立的事件调度器。它仅仅是一个描述事件调度器、事件订阅者、事件接口和通用事件接口的接口。有关更多详细信息,请参阅规范。
使用方法
如果您需要事件调度器,您可以像这样使用接口:
<?php use Psr\Log\EventDispatcherInterface; use Psr\Log\EventInterface; class Foo { private $logger; public function __construct(EventDispatcherInterface $logger = null) { $this->eventDispatcher = $eventDispatcher; } public function doSomething() { if ($this->eventDispatcher) { $this->eventDispatcher->addListener('event_name', function (EventInterface $event) { // ... }); $this->eventDispatcher->dispatch('event_name'); } // do something useful } }
然后,您可以选择接口的其中一个实现来获取日志记录器。
如果您想实现该接口,可以引入此包并在您的代码中实现Psr\Log\EventDispatcherInterface
。请参阅规范文本以获取详细信息。