国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > PHP > 正文

PHP 觀察者模式的實(shí)現(xiàn)代碼

2020-03-22 19:58:47
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
代碼如下所示:
復(fù)制代碼 代碼如下:
//被察者抽象類
html' target='_blank'>class Observed implements SplSubject{
protected $_name;
protected $_observers; //實(shí)例化,生成一個(gè)觀察者對(duì)象
public function __construct(){
$this- _observers = new SplObjectStorage();
} // 添加觀察者對(duì)象
public function attach(SplObserver $observer){
$this- _observers- attach($observer);
} //刪除觀者對(duì)象
public function detach(SplObserver $observer){
$this- _observers- detach($observer);
} //通知消息
public function notify(){
foreach($this- _observers as $observer){
$observer- showMessage($this);
}
} //普通方法: 設(shè)置值
public function setName($name){
$this- _name = $name;
$this- notify();
} //普通方法: 獲取值
public function getName(){
return $this- _name;
} //普通方法:設(shè)置年齡
public function setAge($age){
$this- age = $age;
foreach($this- _observers as $observer){
$observer- showAge($this- _name,$this- age);
}
}}// 觀察者抽象類
class Observer implements SplObserver{ //顯示消息提示
public function showMessage(SplSubject $obj){
$user = $obj- getName();
if($user==='admin'){
echo '您好, ',$user,'歡迎您進(jìn)入管理后臺(tái) br/
}else{
echo "你好, '$user' 你已經(jīng)被添加到了用戶列表 br/
}
}
//這是繼承父類的抽象方法
public function update(SplSubject $subject) {} //顯示個(gè)人年齡
public function showAge($name,$age){
echo " script alert('$name 的年齡是: $age') /script
}
}$subject = new Observed(); //生成一個(gè)被觀察者對(duì)象
$observer = new Observer(); //生成一個(gè)觀察者對(duì)象
$subject- attach($observer);//把觀察者傳入到被觀察中去
$subject- setName('張三'); //調(diào)用 setName 方法
/*
* 通過(guò)面的 setName 就會(huì)調(diào)用 $this- notify();
* 通過(guò)調(diào)用 $this- notify()就會(huì)調(diào)用 $observer- showMessage($this)方法,
* 即每個(gè)觀察者對(duì)象的 showMessage($obj)方法;
*/
$subject- setName('admin');
$subject- setAge(24);
PHP教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 报价| 库尔勒市| 迁安市| 余江县| 青铜峡市| 墨江| 安达市| 纳雍县| 贵港市| 胶州市| 舒城县| 于都县| 三门县| 拜城县| 南城县| 无锡市| 九寨沟县| 北流市| 江源县| 健康| 左贡县| 封开县| 卓资县| 固镇县| 香格里拉县| 深水埗区| 绿春县| 龙门县| 商水县| 托里县| 灌云县| 瓦房店市| 遵义县| 朝阳县| 肥西县| 毕节市| 林西县| 登封市| 铁岭县| 乌拉特后旗| 金平|