maer / events
此包已被 弃用 并不再维护。未建议替代包。
处理事件的小型包
0.1.0
2015-10-17 23:04 UTC
Requires
- php: >=5.4.0
This package is auto-updated.
Last update: 2022-02-01 12:52:06 UTC
README
需要事件?这里就是!没有模糊,没有过度复杂的实例化或臃肿的类。
安装
使用以下命令使用 Git 克隆或 composer 下载包
composer require maer/events 0.*
使用方法
包含 composer 的自动加载器或手动包含 src/
文件夹中的文件。 (从 EventInterface.php
文件开始)
创建一个新实例
$event = new Maer\Events\Event();
添加监听器
$event->addListener('start_something', 'some-id', function($name) {
echo "Coolest ever: {$name}";
});
触发/发出事件
$response = $event->emit('start_something', ['Chuck Norris']);
// Echoes: Coolest ever: Chuck Norris
移除监听器
$event->removeListener('start_something', 'some-id');
外观/工厂
如果您不想自己存储 Event 类的实例,可以使用组合的外观/工厂类。
将其用作工厂
这总是返回相同的实例
$event = Maer\Events\EventFacade::getInstance();
用作外观
这将使用与 getInstance() 返回相同的实例,因此您可以将它们结合起来
Maer\Events\EventFacade::addListener(...);
Maer\Events\EventFacade::removeListener(...);
$response = Maer\Events\EventFacade::emit(...);
//... and any other method available in the Event class
更多...
上面的内容是基本用法,但还有更多... 我将很快更新此指南。