博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php 燕十八 观察者模式代码例子
阅读量:7229 次
发布时间:2019-06-29

本文共 1204 字,大约阅读时间需要 4 分钟。

lognum=rand(1,10); $this->hobby=$hobby; $this->observers=new SplObjectStorage(); } public function login() { $this->notify();//操作session } public function attach(SPLObserver $observer) { $this->observers->attach($observer); } public function detach(SPLObserver $observer) { $this->observers->detach($observer); } public function notify() { $this->observers->rewind(); while ($this->observers->valid()) { $observer=$this->observers->current(); $observer->update($this); $this->observers->next(); } }}class secrity implements SPLObserver{ public function update(SplSubject $subject) { if($subject->lognum<3) { echo "这是第".$subject->lognum."次安全登录"; }else { echo "这是第".$subject->lognum."次登录,危险"; } }}class ad implements SPLObserver{ public function update(SplSubject $subject) { if($subject->hobby=="sports") { echo "台球赛门票预定"; }else { echo "还是好好学习吧"; } }}$user=new user("study");$user->attach(new secrity());$user->attach(new ad());$user->login();?>

 

转载地址:http://madfm.baihongyu.com/

你可能感兴趣的文章
Spring Boot(1)
查看>>
Winodws 10 美化与调优
查看>>
apache安装及多域名解析及域名代理
查看>>
什么是自动化运维 ? 自动化运维的设计思路以及实战
查看>>
Python练习实例100例(持续更新中)
查看>>
非父组件通信
查看>>
Electron系列文章-主进程与渲染进程
查看>>
高性能缓存服务器 nuster v1.8.8.2 和 v1.7.11.2 发布
查看>>
教你快速入门ES6
查看>>
Python 爬虫十六式 - 第六式:JQuery的假兄弟-pyquery
查看>>
宜昌a货翡翠,包头a货翡翠
查看>>
【微信事业群】趣味面试算法题
查看>>
保守的国美再一次进击社交电商,前途未卜?
查看>>
git
查看>>
Python学习教程(Python学习路线):Python 3—手动创建迭代器
查看>>
说说如何在 Virtual Box 中新建 CentOS 虚拟机
查看>>
Cordova + Vue 实现点击两次退出应用
查看>>
JAVA 多用户商城系统b2b2c-Spring Cloud Stream 介绍
查看>>
spring cloud构建互联网分布式微服务云平台-SpringCloud集成项目简介
查看>>
基于房源的画像分析
查看>>