php实现事件监听与触发实例程序
程序员文章站
2022-04-06 11:56:35
...
闲来无事,想了想PHP如何实现事件监听,参考了jQuery的事件绑定思路,简单的实现了一下.
主要功能:1.绑定事件 支持一个事件绑定多个动作,支持绑定一次性事件,2.触发事件,3.注销事件
php实现事件监听与触发实例程序,代码如下:
$callback, 'once'=>$once); return true; } public static function one($event, $callback){ return self::listen($event, $callback, true); } public static function remove($event, $index=null){ if(is_null($index)) unset(self::$listens[$event]); else unset(self::$listens[$event][$index]); } public static function trigger(){ if(!func_num_args()) return; $args = func_get_args(); $event = array_shift($args); if(!isset(self::$listens[$event])) return false; foreach((array) self::$listens[$event] as $index=>$listen){ $callback = $listen['callback']; $listen['once'] && self::remove($event, $index); call_user_func_array($callback, $args); } } } ?>
以下是一些调用的例子:
文章网址:
随意转载^^但请附上教程地址。