使用觀察者模式實現使用者註冊。註冊成功後台處理發郵件,處理詳情等業務。
觀察者模式的原理這裡就不寫了。php要實現觀察者模式,需要實現兩個介面。具體**如下:
//使用者類
class user implements splsubject//使用者詳情類function register(string $account, string $pwd, array $info = )
$item['id_example'] = $exampleid;
$item['account'] = $account;
$item['openid'] = $account;
$item['type'] = $type;
$userobj = $this->user->additem($item,1); //業務**
$this->status = 1;
$this->attr = $info;
$this->attr['id_user']= $userobj->id;
$login_key = $this->loginsuccess();
return [$user,$login_key];
}function login(string $account, string $pwd ,int $type = 3)
}$this->status = 2;
$this->attr['id_user']= $userobj->id;
$login_key = $this->loginsuccess();
return [$userobj,$login_key];
}function loginsuccess()
public function attach(splobserver $observer)
public function detach(splobserver $observer)
public function notify()
}
class userinfo implements \splobserverelse
}}
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...