mic2100/events

dev-master 2018-05-02 22:00 UTC

This package is auto-updated.

Last update: 2024-09-21 20:15:43 UTC


README

Build Status Coverage Status

说明

事件

事件可以扩展 AbstractEvent 类或实现 EventInterface。一些简单示例

class SampleEventOne extends AbstractEvent
{
    protected $handle = 'sample-event-one';

    public function handle(array $params = null) : bool
    {
        return true;
    }
}
class SampleEventTwo extends AbstractEvent
{
    protected $handle = 'sample-event-two';

    public function handle(array $params = null) : bool
    {
        return true;
    }
}

分发

当你创建了一些事件后,可以将它们添加到分发器中。这样,你可以使用 handle 触发事件,或者使用通配符来触发多个事件。

$dispatcher = new Dispatcher;
$dispatcher->addEvent(new SampleEventOne);
$dispatcher->addEvent(new SampleEventTwo);
$dispatcher->addEvent(new SampleEventTwo, 'custom-handle-one');

$dispatcher->trigger('custom-handle-one'); //triggers one event
$dispatcher->trigger('sample-event*'); //triggers two events