php中的觀察者模式

2021-08-20 16:23:00 字數 1410 閱讀 7933

當乙個物件狀態發生改變後,會影響到其他幾個物件的改變,這時候可以用觀察者模式。像wordpress這樣的應用程式中,它容外部開發組開發外掛程式,比如使用者授權的部落格統計外掛程式、積分外掛程式,這時候可以應用觀察者模式,先註冊這些外掛程式,當使用者發布一篇博文後,就回自動通知相應的外掛程式更新。

觀察者模式符合介面隔離原則,實現了物件之間的鬆散耦合。

觀察者模式

uml圖:

//主題介面

介面

subject

// 觀察者介面

inte***ce

observer

//主題

class

action

implements

subject

//實現藉口

public function

notify() }

}//觀察者

實現

觀察員 }

class

dog

implements

observer }

類的

實現了

observer }

//應用例項

$ action

=new

action();

$ action

- > register(

new

cat());

$ action

- > register(

new

people());

$ action

- > register(

new

dog());

$ action

- > notify();

感興趣的可以嘗試一下

PHP中的觀察者模式

當物件間存在一對多關係時,可以使用觀察者模式 observer pattern 乙個物件 目標物件 的狀態發生改變,所有的依賴物件 觀察者物件 都將得到通知,並執行相應方法。寫乙個簡單的觀察者模式 定義觀察者需要實現的介面 inte ce sendmsg inte ce sendmsg 觀察者 1 ...

php中的觀察者模式

觀察者模式 複製 如下 inte ce subject class boss implements subject public function detach observer public function notify public function subjectstate subject ...

PHP 觀察者模式

觀察者模式 定義物件間的一種一對多的依賴關係,以便當乙個物件的狀態發生改變時,所有依賴於它的物件都得到通知並自動重新整理 能夠便利地建立檢視目標物件狀態的物件,並且提供與核心物件非耦合的指定功能 外掛程式系統 class observerable public function removeobse...