分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

php设计模式之观察模式

发布时间:2023-09-06 02:08责任编辑:赖小花关键词:暂无标签
 1 /** 2 ?* 事件产生类 3 ?* Class EventGenerator 4 ?*/ 5 abstract class EventGenerator 6 { 7 ????private $ObServers = []; 8 ?9 ????//增加观察者10 ????public function add(ObServer $ObServer)11 ????{12 ????????$this->ObServers[] = $ObServer;13 ????}14 15 ????//事件通知16 ????public function notify()17 ????{18 ????????foreach ($this->ObServers as $ObServer) {19 ????????????$ObServer->update();20 ????????}21 ????}22 23 }24 25 /**26 ?* 观察者接口类27 ?* Interface ObServer28 ?*/29 interface ObServer30 {31 ????public function update($event_info = null);32 }33 34 /**35 ?* 观察者136 ?*/37 class ObServer1 implements ObServer38 {39 ????public function update($event_info = null)40 ????{41 ????????echo "观察者1 收到执行通知 执行完毕!\n";42 ????}43 }44 45 /**46 ?* 观察者247 ?*/48 class ObServer2 implements ObServer49 {50 ????public function update($event_info = null)51 ????{52 ????????echo "观察者2 收到执行通知 执行完毕!\n";53 ????}54 }55 56 /**57 ?* 事件58 ?* Class Event59 ?*/60 class Event extends EventGenerator61 {62 ????/**63 ?????* 触发事件64 ?????*/65 ????public function trigger()66 ????{67 ????????//通知观察者68 ????????$this->notify();69 ????}70 }71 72 //创建一个事件73 $event = new Event();74 //为事件增加旁观者75 $event->add(new ObServer1());76 $event->add(new ObServer2());77 //执行事件 通知旁观者78 $event->trigger();

php设计模式之观察模式

原文地址:https://www.cnblogs.com/chinwe/p/9431104.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved