适配器模式

适配器模式(Adapter)模式:将一个类的接口,转换成客户期望的另一个类的接口。适配器让原本接口不兼容的类可以合作无间。列如:将数据库接口封装成一样的接口, 这样就可以适用于不同场景

案例 将php数据操作封装成统一的api

统一接口api

namespace Test;

interface IDatabase

{

function connect($host, $user, $passwd, $dbname);

function query($sql);

function close();

}

mysql 连接

namespace Test;

class MySQL implements IDatabase

{

protected $conn;

function connect($host, $user, $passwd, $dbname)

{

$conn = mysql_connect($host, $user, $passwd);

mysql_select_db($dbname, $conn);

$this->conn = $conn;

}

function query($sql)

{

$res = mysql_query($sql, $this->conn);

return $res;

}

function close()

{

mysql_close($this->conn);

}

}

mysqli 连接

namespace TEST;

class MySQLi implements IDatabase

{

protected $conn;

function connect($host, $user, $passwd, $dbname)

{

$conn = mysqli_connect($host, $user, $passwd, $dbname);

$this->conn = $conn;

}

function query($sql)

{

return mysqli_query($this->conn, $sql);

}

function close()

{

mysqli_close($this->conn);

}

}

PDO连接

namespace Test;

class PDO implements IDatabase

{

protected $conn;

function connect($host, $user, $passwd, $dbname)

{

$conn = new \PDO("mysql:host=$host;dbname=$dbname", $user, $passwd);

$this->conn = $conn;

}

function query($sql)

{

return $this->conn->query($sql);

}

function close()

{

unset($this->conn);

}

}

简书php硬件交互,php设计模式——适配器模式相关推荐

  1. MediatR 知多少 - 简书

    MediatR 知多少 - 简书 原文:MediatR 知多少 - 简书 引言 首先不用查字典了,词典查无此词.猜测是作者笔误将Mediator写成MediatR了.废话少说,转入正题. 先来简单了解 ...

  2. python工厂模式 简书_工厂

    思考题 public void printMenu() { PancakeHouseMenu pancakeHouseMenu = new PancakeHouseMenu(); ArrayList ...

  3. 爬虫与浏览器的区别,爬虫产生(出自简书)

    一篇文章了解爬虫技术现状 - 简书 https://www.jianshu.com/p/fbdad6f77d0c 需求 万维网上有着无数的网页,包含着海量的信息,无孔不入.森罗万象.但很多时候,无论出 ...

  4. Java设计模式 - 适配器模式

    概述 将一个类的接口转换成客户希望的另外一个接口.适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作. 构造器模式 上面的概述可能不是太容易理解,下面举一个例子说明适配器模式的应用. ...

  5. 在WordPress中添加简书风格的连载目录和文章导航...

    需求 自从机缘巧合的开始翻译Gensis的系列教程,越来越沉迷于研究这款WordPress主题框架了,一边翻译一边学习一边也在自己的丘壑博客上实验. 最近又有了一个需求,想在该系列的每一篇上都加上一个 ...

  6. 在WordPress中添加简书风格的连载目录和文章导航

    需求 自从机缘巧合的开始翻译Gensis的系列教程,越来越沉迷于研究这款WordPress主题框架了,一边翻译一边学习一边也在自己的丘壑博客上实验. 最近又有了一个需求,想在该系列的每一篇上都加上一个 ...

  7. 文字创作类App分享-简书

    今天我用Mockplus做了一套简书App的原型,这是一款文字创作类的App,用户通过写文.点赞等互动行为,提高自己在社区的影响力,打造个人品牌.我运用了Mockplus基础组件.交互组件.移动组件等 ...

  8. pannel添加的子窗体很大_在WordPress中添加简书风格的连载目录和文章导航

    转自丘壑博客,转载注明出处 需求 自从机缘巧合的开始翻译Gensis的系列教程,越来越沉迷于研究这款WordPress主题框架了,一边翻译一边学习一边也在自己的丘壑博客上实验. 最近又有了一个需求,想 ...

  9. 简书优秀IT专栏作者推荐

    简书优秀IT专栏作者 (个人整理,排名不分先后,欢迎留言补充) 推荐简书作者:不知霜舞哀伤udspj 简介: 专题:<程序员的日常生活> 推荐简书作者:s2dongman申悦 微博ID:@ ...

最新文章

  1. 集锦 | 新冠图像数据分析论文集合
  2. 面试官最想要的synchronized,你值得拥有
  3. libevent和libcurl实现http和https服务器 cJSON使用
  4. PyTorch学习笔记(二)——回归
  5. 云原生DevOps的5步升级路径
  6. 免费python编程自学网站-免费学习Python编程的3个优秀的网站资源
  7. 04 ZooKeeperAPI实战
  8. 【成功智慧】010.依靠忍耐度过困难时期
  9. VPX信号处理板学习资料第274篇:基于XC7V690T的3U VPX信号处理板
  10. 文章采集代理ip怎么用?
  11. (9)LICEcap——PC端动图创建工具
  12. 【Arduino实验10 数码管显示】
  13. 加拿大康考迪亚计算机工程,加拿大康考迪亚
  14. 字节跳动工程师收入世界第五,2021年全球程序员收入报告出炉
  15. Unity3d:UGUI源码,Rebuild优化
  16. 网络基础笔记(三)二层交换机工作原理、单点故障与链路聚合、DHCP
  17. 谷歌拼音输入法PinyinIME源码修改----随着Setting中中英文的切换对应改变软键盘中英文输入且字符变换
  18. 基于ArduPilot的旋翼式无人机飞行器开发系列(三,四轴无人机的组成)
  19. 中国工业制造RFID市场竞争力排名分析与投资战略规划研究报告2022-2028年版
  20. 遗传算法入门(连载1-10)

热门文章

  1. 大数据与数据挖掘考试题_北京2020届中考物理出题策略大揭秘!
  2. openpyxl.utils.exceptions.IllegalCharacterError错误
  3. python 如何获取当前系统的时间
  4. 通俗理解条件熵-数学
  5. tensorflow兼容处理 tensorflow.compat.v1 tf.contrib
  6. Centos7安装Nginx详细步骤
  7. 客快物流大数据项目(十六):使用脚本创建镜像
  8. CSS grid 的用法
  9. Python 单下划线(“_“)与双下划线(“__“)以及以双下划线开头和结尾的的区别
  10. python 使用sax 解析xml 文件