知识大全 php设计模式之观察者模式的应用详解

Posted

篇首语:志不强者智不达,言不信者行不果。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 php设计模式之观察者模式的应用详解相关的知识,希望对你有一定的参考价值。

 代码如下: <?php //抽象主题 interface Subject public function attach($observer); public function detach($observer); public function notifyObservers(); //具体主题 class ConcreateSubject implements Subject private $_observers; public function __construct() $this >_observers = array(); public function attach($observer) return array_push($this >_observers $observer); public function detach($observer) $index = array_search($observer $this >_observers); if($index === false || !array_key_exists($index $this >_observers)) return false; unset($this >_observer[$index]); return true; public function notifyObservers() if(!is_array($this >_observers)) return false; foreach($this >_observers as $observer) $observer >update(); return true; //抽象观察者 interface Observer public function update(); //具体观察者 class ConcreteObserver implement Observer private $_name; public function __construct($name) $this >_name = $name; public function update() echo Observer $this >_name has notified<br/> ; //客户端 class Client public static function main() $subject = new ConcreteSubject(); //新增第一个观察者 $observer = new ConcreteObserver( Martin ); $subject >attach($observer ); //通知 $subject >notifyObservers(); //新增第二个观察者 $observer = new ConcreteObserver( jaky ); $subject >attach($observer ); //通知 $subject >notifyObservers(); //删除观察者 $subject >deatch($observer ); //通知 $subject >notifyObservers(); Client::main(); ?> cha138/Article/program/PHP/201311/21261

相关参考

知识大全 php设计模式之单例、多例设计模式的应用分析

本篇文章是对php设计模式中的单例与多例设计模式的应用进行了详细的分析介绍需要的朋友参考下   单例(Singleton)模式和不常见的多例(Multiton)模式控制着应用程序中类的数量如

知识大全 php设计模式介绍之迭代器模式

  《PHP设计模式介绍》第八章迭代器模式  类中的面向对象编程封装应用逻辑类就是实例化的对象每个单独的对象都有一个特定的身份和状态单独的对象是一种组织代码的有用方法但通常你会处理一组对象或者集合  

知识大全 java 设计模式之 观察者模式(Observer)

java设计模式之观察者模式(Observer)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 高级应用 java多线程设计模式详解之一

  线程的创建和启动    java语言已经内置了多线程支持所有实现Runnable接口的类都可被启动一个新线程新线程会执行该实例的run()方法当run()方法执行完毕后线程就结束了一旦一个线程执行

知识大全 .net设计模式之观察者模式

  故事    小雪是一个非常漂亮的女孩漂亮的女孩总是有很多的追求者而且追求者的队伍在不断的变动随时有人进入这个队伍也有人退出男孩们追求女孩时总是表现出%的关心当小雪私自游玩时总是不断收到追求者询问小

知识大全 PHP 应用程序配置模式

PHP应用程序配置模式  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  本文举例说明了创建可配置P

知识大全 php设计模式介绍之编程惯用法第1/3页

  在这里总结的许多编程惯用法都是很值得做为单独一个章节的甚至一本书的你应该把这章做为PHP模式设计使用惯用法的相关介绍而且查看一些列出的参考书来进行更深入的学习  测试你的代码  可能没有什么代码惯

知识大全 设计模式-快餐简解-观察者模式

  【观察者模式应用场景举例】  比如在玩极品飞车这款游戏每一个车手到达终点的时候都会在其它车手的屏幕上显示某某人以多少时间到达终点的提示其实这就是一个典型的观察者模式的应用观察者模式即是典型的双向一

知识大全 JavaScript模式之工厂模式(Factory)应用介绍

JavaScript模式之工厂模式(Factory)应用介绍  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看

知识大全 在Java中应用设计模式之Singleton

在Java中应用设计模式之Singleton  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  基本