美文网首页
PHP 适配器模式 与 接口

PHP 适配器模式 与 接口

作者: wyc0859 | 来源:发表于2019-02-15 16:29 被阅读0次

接口

什么时候用接口?

1、定规范,保持统一性;
2、多个平级的类需要去实现同样的方法,只是实现方式不一样

接口规范
  • 接口不能实例化
  • 接口的属性必须是常量
  • 接口的方法必须是public【默认public】,且不能有函数体
  • 类必须实现接口的所有方法
  • 一个类可以同时实现多个接口,用逗号隔开
  • 接口可以继承接口【用的少】

适配器模式

适配器模式,将截然不同的函数接口封装成统一的API
如数据库操作有3种:mysql mysqli pdo,可以用适配器统一成一致

<?php
//定义接口,
interface Itface{
    function connect($host, $user, $passwd, $dbname);
    function query($sql);
    function close();
}

//创建类并继承接口
class Pdos implements Itface{
    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);
    }
}

class MySQL implements Itface{
    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);
    }
}

$db = new Pdos();  //在这里轻松切换PDO和MySQL,下面的代码不变仍能达到一致的结果
$db -> connect('127.0.0.1','root','123456','tp2'); 
$arr=$db->query('select * from ');
$db->close();
$res=$arr->fetch_assoc();
var_dump($res);

3种链接方式的demo

相关文章

  • php设计模式(三)适配器模式

    适配器模式 适配器模式将截然不同的函数接口封装成统一的api 实际应用:php数据操作有mysql、mysqli、...

  • 设计模式之适配器模式

    适配器模式: 类适配器模式、对象适配器模式、接口适配器模式 1.类适配器模式:新的接口出现了,但是和老的接口不兼容...

  • PHP 适配器模式 与 接口

    接口 什么时候用接口? 1、定规范,保持统一性;2、多个平级的类需要去实现同样的方法,只是实现方式不一样 接口规范...

  • 适配器模式

    适配器模式主要分为三类:类的适配器模式、对象的适配器模式、接口的适配器模式。适配器模式将某个类的接口转换成客户端期...

  • 代理 & 适配器 & 装饰模式 对比

    代理 & 适配器 & 装饰模式 对比 适配器模式 vs 代理模式适配器模式: 提供一个不同的接口(如不同版本的接口...

  • Java接口

    抽象类,抽象方法 接口 策略设计模式 适配器模式 多继承 接口的继承 接口中的域 接口与工厂

  • Java设计模式(二)

    talk is cheap show me the code 适配器模式 类适配器模式 接口适配器模式 对象适配器...

  • 设计模式之适配和装饰

    1. 适配器模式 通过一个简单的例子说一下适配器模式,适配器模式属于接口型模式。适配器模式的意图在于,使用不同接口...

  • 适配器模式与装饰器模式的区别

    适配器与装饰器模式的别名都是包装模式(Wrapper)。 区别 适配器模式的意义 将一个接口转变成另一个接口,目的...

  • 适配器模式

    适配器模式属于接口隔离模式。适配器模式是一种补就模式,适配器中应该又客户希望的统一接口,继承那些接口不兼容的类,修...

网友评论

      本文标题:PHP 适配器模式 与 接口

      本文链接:https://www.haomeiwen.com/subject/folmeqtx.html