首页 > 编程 > PHP > 正文

Laravel框架中的PHP观察者模式

2020-03-22 17:32:38
字体:
来源:转载
供稿:网友
这篇文章主要介绍了PHP观察者模式,结合实例形式分析了php观察者模式的简单定义与使用操作技巧,需要的朋友可以参考下

本文实例讲述了PHP观察者模式。分享给大家供大家参考,具体如下:

 ?php//观察者模式//抽象主题类interface Subject html' target='_blank'>public function attach(Observer $Observer); public function detach(Observer $observer); //通知所有注册过的观察者对象 public function notifyObservers();//具体主题角色class ConcreteSubject implements Subject private $_observers; public function __construct() $this- _observers = array(); //增加一个观察者对象 public function attach(Observer $observer) return array_push($this- _observers,$observer); //删除一个已经注册过的观察者对象 public function detach(Observer $observer) $index = array_search($observer,$this- _observers); if($index === false || !array_key_exists($index, $this- _observers)) return false; unset($this- _observers[$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 implements Observer private $_name; public function __construct($name) $this- _name = $name; //更新方法 public function update() echo Observer .$this- _name. has notify $Subject = new ConcreteSubject();//添加第一个观察者$observer1 = new ConcreteObserver( baixiaoshi $Subject- attach($observer1);echo the first notify: $Subject- notifyObservers();//添加第二个观察者$observer2 = new ConcreteObserver( hurong echo br/ second notify: $Subject- attach($observer2);/*echo $Subject- notifyObservers();echo br/ $Subject- notifyObservers();*/? 

运行结果:

the first notify:Observerbaixiaoshi has notify
second notify:

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP !

相关推荐:

Laravel如何利用gulp构建前端资源

如何实现Laravel框架中composer自动加载

以上就是Laravel框架中的PHP观察者模式的详细内容,PHP教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表