event php,PHP event 事件机制

69c5a8ac3fa60e0848d784a6dd461da6.png

/*

* PHP 事件机制

*/

class baseClass{

private $_e;

public function __set($name,$value){

if( strncasecmp($name,"on",2) === 0 ){

if(!isset($this->_e[$name]))

$this->_e[$name] = array();

return array_push($this->_e[$name] , $value);

}

}

public function __get($name){

if( strncasecmp($name,"on",2) === 0 ){

if(!isset($this->_e[$name]))

$this->_e[$name] = array();

return $this->_e[$name];

}

}

public function raiseEvent($name, $parse){

if(isset($this->_e[$name])){

print_r($this->_e[$name]);

foreach($this->_e[$name] as $handler)

call_user_func($handler,$parse);

}

}

public function save(){

//xxx

$this->raiseEvent("onSave", array());

}

}

$InsA = new baseClass();

//1

$InsA->onSave = function($e){

echo $e;

};

//2

class Log{

static public function saveLog($e){

echo "save Log".$e;

}

}

$InsA->onSave = array("Log" , "saveLog");

$InsA->raiseEvent(‘onClick‘,‘success‘);

?>

69c5a8ac3fa60e0848d784a6dd461da6.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/373271.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android JNI编程(五)——C语言的静态内存分配、动态内存分配、动态创建数组...

版权声明:本文出自阿钟的博客,转载请注明出处:http://blog.csdn.net/a_zhon/。 目录(?)[] 一:什么是静态内存什么又是动态内存呢? 静态内存:是指在程序开始运行时由编译器分配的内存,它的分配是在程序开始…

配置MyBatis 3

MyBatis是一个非常流行且也是最有效的SQL映射框架。 MyBatis可用于Java和.net语言。 MyBatis并不是Hibernate的真正替代品,但是我们可以使用该框架来减少MyBatis提供的高效和高性能的数据库相关代码。 本教程将向您展示使用数据库配置MyBatis 3的步骤。 MyBatis 3支…

java中datetime类型转换,Java中日期格式和其他类型转换详解

涉及的核心类:Date类、SimpleDateFormat类、Calendar类一、Date型与long型Date型转换为long型Date date new Date();//取得当前时间Date类型long date2long date.getTime();//Date转longlong型转换为Date型long cur System.currentTimeMills();//取得当前时间lon…

GWT MVP变得简单

GWT Model-View-Presenter是用于大规模应用程序开发的设计模式。 它源于MVC,它在视图和逻辑之间进行划分,并有助于创建结构良好,易于测试的代码。 为了帮助像我这样的懒惰开发人员,我研究了如何减少使用声明式UI时要编写的类和接口…

今年计划要看的书全部备齐

上个月购买的书《今年计划看的书其中几本》 http://www.cnblogs.com/insus/p/5325513.html 昨天购买的书回来了,今年计划要看的书全部备齐。《MongoDB》,《深入理解Bootstarp》和《ASP.NETSignalR编程实践》…… 转载于:https://www.cnblogs.com/in…

图形教程

众所周知,我们可以借助Java库制作游戏,这些库为我们提供制作游戏所需的图形。 因此,今天我将开始一个关于Java图形的非常新的部分。 我之前曾发表过有关如何制作所得税计算器的文章 。 首先要满足一些先决条件: -您应该对Java语法…

向导设计模式

我们都喜欢巫师……。 (我的意思是软件向导)。 我们总是很高兴跳上那些“下一步”按钮,就像我们在我们的时髦的小鸡上跳舞一样。 因此,今天我们将您心爱的向导带入您的编码经验中。 让我们跳入一个例子。 假设您要设计一个Conserv…

Flex 布局教程:语法篇

网页布局(layout)是CSS的一个重点应用。 布局的传统解决方案,基于盒状模型,依赖 display属性 position属性 float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。 2009年,W3…

JavaFX 2中的PopupMenu

创建弹出菜单 要在JavaFX中创建Popupmenu,可以使用ContextMenu类。 您向其中添加MenuItems,也可以使用SeparatorMenuItem创建可视分隔符。 在下面的示例中,我选择子类ContextMenu并将MenuItems添加到其构造函数中。 public class Animatio…

matlab中CH指标聚类评价指标,MATLAB聚类有效性评价指标(外部)

MATLAB聚类有效性评价指标(外部)作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/更多内容,请看标签:MATLAB、聚类前提:数据的真实标签已知!1. 归一化互信息(Normalized Mutual information)定义程序functio…

php-cgi cpu很高,php-cgi占用cpu资源过高的解决方法

转的网上的,不过对PHP-CGI菜鸟的人,还是有点帮助的。1. 一些php的扩展与php版本兼容存在问题,实践证明 eAccelerater与某些php版本兼容存在问题,具体表现时启动php-cgi进程后,运行10多分钟,奇慢无比&#x…

多表之间关联查询

内连接 jion on 自连接 本表进行内连接的查询形式 外链接: 左链接 写法:select 字段 from 表1 t left join 表2 s on t.字段1 s.字段1 where 条件 或者 作用:保证左边的表的数据全部显示,包括空的 右链接 写法 :sele…

Java 7:WatchService

在Java 7的所有新功能中,更有趣的是WatchService,它增加了监视目录更改的功能。 WatchService直接映射到本机文件事件通知机制(如果有)。 如果本机事件通知机制不可用,则默认实现将使用轮询。 结果,响应性&…

做一件事情的3个关键指标:兴趣、能力和回报

最近突然有了一点新的感悟,在原有的认识基础之上。关于找工作,大家说的最多的,根据自己的“兴趣”和“能力”。我觉得这是不够的,还应该加上一个“回报”。兴趣:对一件事有没有愿望去尝试,侧重“好奇心”。…

iOS应用内支付(IAP)详解

在iOS开发中如果涉及到虚拟物品的购买,就需要使用IAP服务,我们今天来看看如何实现。 在实现代码之前我们先做一些准备工作,一步步来看。 1、IAP流程 IAP流程分为两种,一种是直接使用Apple的服务器进行购买和验证,另一种…

php 去除 html 属性,用PHP 去掉所有html标签里的部分属性

用PHP 去掉所有html标签里的部分属性http://zhidao.baidu.com/question/418471924.html用PHP 去掉所有html标签里的部分属性 tppabsset_time_limit(0);function view_dir($dir){$dpopendir($dir); //打开目录句柄//echo "".$dir."";$path2;while ($file r…

在Windows上安装Elasticsearch 5.0

在windows上安装Elasticsearch Elasticsearch可以使用.zip软件包安装在Windows上。 elasticsearch-service.bat命令,它将设置Elasticsearch作为服务运行。 Elasticsearch的最新稳定版在Download Elasticsearch下载,其他的版本在Past Releases page下载。…

Java EE 6示例– Galleria

您是否一直想知道在哪里可以找到使用Java EE 6构建的良好端到端示例? 我有。 您在网上找到的大多数东西都是非常基础的,不能解决现实世界中的问题。 Java EE 6教程就是这样。 所有其他内容,例如Adam Bien所发表的大多数内容,都是范…

如何在Jetty中使用SPDY

SPDY是Google提出的一种新协议,是针对网络的新协议。 SPDY与HTTP兼容,但尝试通过压缩,多路复用和优先级降低网页负载。准确地说,快速的目标是:( http://dev.chromium.org/spdy/spdy-whitepaper &#xff09…

虐杀外星人java,逆天游戏《毁灭全人类2》登PS4 外星人疯狂虐杀地球人

逆天游戏《毁灭全人类2》登PS4 外星人疯狂虐杀地球人2016-10-17 10:45:58来源:游戏下载编辑:小年青评论(0)广大的小伙伴都有看过许多外星人企图入侵毁灭地球的电影,已此为题材而开发的游戏也不在少数。近日泛欧洲游戏信息组织又为一款该种题材…