本文实例讲述了PHP实现的观察者模式。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
<?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<br/>' ; } } class read implements obserable{ public function update(){ echo 'now first time you need to read<br/>' ; } } class speak implements obserable{ public function update(){ echo 'now first time you need to speak<br/>' ; } } class write implements obserable{ public function update(){ echo 'now first time you need to write<br/>' ; } } $transfer = new transfer(); $transfer ->register( new listen()); $transfer ->register( new read()); $transfer ->register( new speak()); $transfer ->register( new write()); $transfer ->trigger(); |
希望本文所述对大家PHP程序设计有所帮助。