本文实例讲述了php适配器模式简单应用。分享给大家供大家参考,具体如下:
适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。
这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入笔记本,这样就可以通过笔记本来读取内存卡。
示例:
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
|
//假设使用php开发了一个天气接口
class Weather{
public static function show(){
$info = array (
'temperature' => '25°C' ,
'wind' => '西北风3~4级' ,
'weather' => '晴' ,
'PM2.5' => 60
);
return serialize( $info );
}
}
//PHP客户端调用
$msg = Weather::show();
$msg_arr = unserialize( $msg );
echo $msg_arr [ 'weather' ];
//这时,如果java、python也要来调用天气接口,
//但是不识别串行化后的字符串,但是又不能修改旧接口和旧php的调用
//这时候可以用一个新的类继承,也就是适配器模式,来修改返回的数据格式为json
class WeatherAdapter extends Weather{
public static function show(){
$info = parent::show();
$info_arr = unserialize( $info );
return json_encode( $info_arr );
}
}
//java、python就可以使用返回的json进行使用
$msg = WeatherAdapter::show();
|
运行结果:
晴
希望本文所述对大家PHP程序设计有所帮助。
原文链接:https://www.cnblogs.com/gyfluck/p/9682254.html