本文实例讲述了php适配器模式简单应用。分享给大家供大家参考,具体如下:
适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。
这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入笔记本,这样就可以通过笔记本来读取内存卡。
示例:
//假设使用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相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
【排序算法】之lowb三人组冒泡、插入、选择 什么是lowb三人组 冒泡排序bubble so...
ADO对象: Connection Command Recordset Record Stream ASP支持的对象很多,可...
一石激起千层浪,继中国区浩浩荡荡的大裁员告一段落之后,甲骨文并未因此收起手...
一、正则表达式概述 二、正则表达式在VBScript中的应用 三、正则表达式在VavaScr...
前言 相信大家都知道在IDE中代码的智能提示几乎都是标配,虽然一些文本编辑器也...
计算属性computed: 支持缓存,只有依赖数据发生改变,才会重新进行计算 不支持...
本文将研究 ES6 的 for ... of 循环。 旧方法 在过去,有两种方法可以遍历 javas...
微信文件传输助手是微信电脑版与手机微信之间相互传输图片等文件的好工具,但很...
vbs:把一段文字中指定字符颜色变成红色的正则 functionc(Tstr,Word) Dimre Setre...
歌词编辑器 歌词编辑器 第一步:选择要播放的歌曲并播放 第二步:填写全部的歌词...