php設計模式之觀察者模式

2022-04-29 13:42:10 字數 949 閱讀 9259

觀察者模式以前一直不懂,現在有時間從網上搞了一發,自己寫了一遍

<?php/**

* 繼承php的spl介面實現被觀察的物件

* class myobject */

class myobject implements

splsubject

/*** 增加觀察者

* @param splobserver $observer 觀察者物件

*/public

function attach(splobserver $observer

)

/*** 減少觀察者

* @param splobserver $observer 觀察者物件

*/public

function detach(splobserver $observer

)

/*** 進行更改通知,通知觀察者的物件發生改變

*/public

function

notify()

}/**

* 獲取名稱

*/public

function

getname()

}/** * 觀察者的類別,繼承splobserver

* class myobserver */

class myobserver implements

splobserver

}$observer1 = new

myobserver();

$observer2 = new

myobserver();

$subject = new myobject('哈哈哈哈');

$subject->attach($observer1

);$subject->attach($observer2

);$subject->notify();

php設計模式之 觀察者模式

觀察者模式 observer 當乙個物件狀態發生改變時,依賴它的物件全部收到通知,並自動更新。抽象被觀察者 abstract class eventgenerator 通知所有觀察者 public function notify 具體被觀察者class event extends eventgene...

PHP 設計模式之觀察者模式

介紹現在有兩派,有的人建議使用設計模式,有的人不建議使用設計模式!這就向寫文章一樣,有的人喜歡文章按照套路走,比如敘事性質的文章,時間,地點,人物,事件。而有的人喜歡寫雜文或者散文,有的人喜歡寫詩詞!很多時候,我看設計模式的時候,有些設計模式只是吻合我的 習慣。但是你硬去套它,那麼反而適得其反。很多...

php 設計模式之觀察者模式

觀察者模式 1.抽象事件發生類 abstract class eventgenerator 對 所有 觀察者 進行 事件 通知 function notify 2.宣告具體事件類 class event extends eventgenerator 3.宣告 乙個 觀察者 介面 inte ce ob...