当前位置:Gxlcms > PHP教程 > php中的设计模式之观察者模式

php中的设计模式之观察者模式

时间:2021-07-01 10:21:17 帮助过:31人阅读

observers[] = $observer ;	}	  // 删除观察者 (看花的人)	public function detach(Observer $observer){				if(in_array($observer,$this->observers)){			$index = array_search($observer, $this->observers);		    unset($this->observers[$index]);            return TRUE;		}		return false; 			}	//	向观察者(们)发出通知	public function notify(){				foreach($this->observers as $observer){			$observer->dosometing(); 		}	}	}// 具体的人 class LoveFlowerPerson implements Observer{	 private $name  ;		 function __construct($sName){		 $this->name =$sName ;	 }	 public function dosometing(){		 	  echo  $this->name.'浇花  ';			 }	 }/* 添加第一个观察者花农 */$subject = new Flower();$observer1 = new LoveFlowerPerson('wlt');$subject->attach($observer1);
/* 添加第二个观察者花农 */
$observer2 = new LoveFlowerPerson('wlb');$subject->attach($observer2);$subject->notify(); // 主题变化,通知观察者echo '删除掉一个花农
'; $subject->detach($observer2);$subject->notify(); // 主题变化,通知观察者

人气教程排行