| 
 | 
	
 
 
1 <?php 
 2 /** 
 3  * 外观模式 示例 
 4  * 
 5  * 为子系统中的一组接口提供一个一致的界面,定义一个高层接口,使得这一子系统更加的容易使用 
 6 */ 
 7 class SubSytem1 
 8 { 
 9 publicfunction Method1() 
10     { 
11 echo"subsystem1 method1<br/>"; 
12     } 
13 } 
14  
15 class SubSytem2 
16 { 
17 publicfunction Method2() 
18     { 
19 echo"subsystem2 method2<br/>"; 
20     } 
21 } 
22  
23 class SubSytem3 
24 { 
25 publicfunction Method3() 
26     { 
27 echo"subsystem3 method3<br/>"; 
28     } 
29 } 
30  
31 class Facade 
32 { 
33 private$_object1=null; 
34 private$_object2=null; 
35 private$_object3=null; 
36  
37 publicfunction __construct() 
38     { 
39 $this->_object1 =new SubSytem1(); 
40 $this->_object2 =new SubSytem2(); 
41 $this->_object3 =new SubSytem3(); 
42     } 
43  
44 publicfunction MethodA() { 
45 echo"Facade MethodA<br/>"; 
46 $this->_object1->Method1(); 
47 $this->_object2->Method2(); 
48     } 
49  
50 publicfunction MethodB() { 
51 echo"Facade MethodB<br/>"; 
52 $this->_object2->Method2(); 
53 $this->_object3->Method3(); 
54     } 
55 } 
56  
57 // 实例化 
58 $objFacade=new Facade(); 
59  
60 $objFacade->MethodA(); 
61 $objFacade->MethodB(); |   
 
 
 
 | 
  
 | 
 | 
 | 
| 
 | 
 |