開發中,有些驗證功能需要我們實現,類似於這類功能,我們往往可以通過觀察者模式去實現。下面分析下觀察者模式。
<?php
class user implements splsubject
public function login()
//新增觀察者服務
public function attach(splobserver $observer)
//刪除觀察者服務
public function detach(splobserver $observer)
//觸發觀察者服務
public function notify()}}
//建立觀察者
class serity implements splobserver
else }}
class ad implements splobserver
else }}
//實施觀察
$user = new user('study');
$user->attach(new serity());
$user->attach(new ad);
$user->login();
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...