php开源嘛
首页 | English | MySql数据库 | Php编程 | 建站杂烩 | 系统服务器 | 资源共享 | 专题 | 才桀网 | 支持论坛
  当前位置:主页>Php编程>文章内容
PHP杂烩:一个基于PHP的事件机制
来源:builder.com.cn 作者:本站整理 发布时间:2008-01-09  

PHP杂烩:一个基于PHP的事件机制 php开源.com

EventUtils: php开源.com

final class EventArgs {
}

interface EventHandler {
public function Invoke($Sender, EventArgs $E);
}

class Event {
private $EventHandlerList = array ();

public function AddEventHandler(EventHandler $EventHandler) {
$this->EventHandlerList[] = $EventHandler;
}

public function DeleteEventHandler(EventHandler $EventHandler) {
$Index = array_search($EventHandler, $this->EventHanlerList);
array_splice($this->EventHanlerList, $Index, 1);
}

public function Invoke($Sender, EventArgs $E) {
foreach ($this->EventHandlerList as $EventHandler) {
$EventHandler->Invoke($Sender, $E);
}
}

}

Test Case:

class TestEventHandler implements EventHandler {
public function Invoke($Sender, EventArgs $E) {
echo "Hello, ".$Sender;
}
}

function TestEvent() {
$Event = new Event();
$EventHandler = new TestEventHandler();
$Event->AddEventHandler($EventHandler);
$Event->Invoke($Event, new EventArgs());
}

Output:

Hello, Object id #5ok.

支持Multicast
麻烦的是,PHP不支持internal class,这个机制可能还要修改。


(阅读次数:
上一篇:真想赚钱需把钱看轻之马云对话中小站长   下一篇:Ajax技术(二)用AjaxTags简化Ajax开发
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论
  热点文章
·PHP生成验证码图片的源代码
·PHP会话对(Session)使用入门
·Php部分常见问题总结[bug]
·php正则表达式的快速学习方法
·高手传经:学习PHP重在坚持
·用php生成静态页面的php函数
·PHP对文本数据库的基本操作方法
·用 PHP 读取文件的正确方法
·讲解PHP+MySQL的分页显示示例
·用PHP构建一个简易监视引擎
·我是怎样打造简单的PHP&MYSQL留
·用PHP实现表单验证码登陆校验
  相关文章
·PHP与js(Javascript)的两种交互
·php实现英文星期几转为中文的两
·mysql的新特性的一个扩展mysqli
·php的xml分析函数、精彩阅读...
·怎样用php过滤危险html代码
·PHP中使用Sockets 从Usenet中获
·怎样用PHP插件实现MySQL为基础的
·黑客隐藏PHP文件后门的技巧...
·PHP 4 与 PHP 5 中对象的范例比
·实例学习动态网页PHP的语法{初学
·php类中序列化对象与__sleep和__
·PHP编程:使用PHP生成1000个随机

关于我们 | 本站声明 | 友情连接 | 诚邀加盟 | 网站地图
版权Power by DedeCms   技术支持QQ =>> 罗江游鱼   Jacking  后台登陆
Copyright @ 2007 公司地址:柳州市东环路268号 邮编:545006 电话:15920389818 桂ICP备07006725号