觀察者模式,觀察者模式類圖
觀察者模式
php //定義觀察者調用介面 class transfer{ protected $_observers = array(); //註冊對象 public function register($sub){ $this->_observers[] = $sub; } //外部統一調用 public function trigger(){ if(!empty($this->_observers)){ foreach($this->_observers as $observer){ $observer->update(); } } } } //觀察者介面 interface obserable{ public function update(); } //實現觀察者 class listen implements obserable{ public function update(){ echo 'now first time you need to do listen
'; } } class read implements obserable{ public function update(){ echo 'now first time you need to read
'; } } class speak implements obserable{ public function update(){ echo 'now first time you need to speak
'; } } class write implements obserable{ public function update(){ echo 'now first time you need to write
'; } } $transfer = new transfer(); $transfer->register(new listen()); $transfer->register(new read()); $transfer->register(new speak()); $transfer->register(new write()); $transfer->trigger();
http://www.bkjia.com/PHPjc/983246.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/983246.htmlTechArticle觀察者模式,觀察者模式類圖 觀察者模式 ? php // 定義觀察者調用介面 class transfer{ protected $_observers = array (); // 註冊對象 public function regis...