netherphp / ki
事件处理器
v1.0.1
2018-04-06 19:38 UTC
Requires
- php: >=5.4.0
This package is auto-updated.
Last update: 2024-09-05 08:03:18 UTC
README
基本用法
一个事件系统处理器。将回调函数排队,以便在应用程序的其他部分需要时执行。可用于触发操作或过滤内容。默认情况下,事件是一次性使用的,但您也可以使它们持续多次使用。这不像React那样的真正异步操作 - 这些过滤器将会阻塞,因此它们适用于内联过滤。
Nether\Ki::Queue(string EventName, callable Callback, bool Persist default false);
Nether\Ki::Queue('my-first-event',function(){
echo 'LOL EVENT LULZ';
return;
});
这将首次调用它时触发事件。
Nether\Ki::Flow(string EventName, array Args default null);
Nether\Ki::Flow('my-first-event');
在第一次流程之后,该事件将从队列中删除,并且额外的流程将不会处理它,除非您重新排队。
设置过滤事件
要创建一个过滤器,您可能想要创建一个持久事件,这是PHP中按引用传递的少数有效用法之一。
Nether\Ki::Queue('app-hates-at-signs',function(&$input){
if(is_string($input)) $input = str_replace('@','',$input);
},true);
然后当您想要过滤...
Nether\Ki::Flow('app-hates-at-signs',[&$text]);
并且这个过滤器将在整个应用程序运行期间继续工作。
安装
使用Composer。
"require": { "netherphp/ki":"~1.0.0" }