php 适配器模式

一,适配器模式,属于结构设计模式的一种,用于将一个类的接口转换成客户期望的接口。

1,目标接口(Target Interface):是客户期望的接口,定义了客户要调用的方法。

2,适配器类(Adapter Class):实现了目标接口,并将其方法转发到被适配者。适配器类可以是类适配器(通过继承被适配者实现)或者对象适配器(组合实现,传递被适配者类)

3,被适配者(Adaptee):需要被适配到目标接口的类

二,对象适配器的简单例子

php 复制代码
//目标接口
Interface Target{
    public function getName();
}
//被适配者
class Adaptee{

    public function getUserInfo(){
        echo '姓名:张三';
    }
}
//适配器
class Adapter implements Target{
    private $adaptee;
    function __construct(Adaptee $adaptee){
        $this->adaptee=$adaptee;
    }
    public function getName(){
        $this->adaptee->getUserInfo();
    }
}
//客户端调用
$adapteeObj=new Adaptee();
$adapterObj=new Adapter($adapteeObj);
$adapterObj->getName();//姓名:张三

适配器模式可以帮助你在修改原有代码的同时,使得旧的类和新的代码能够兼容工作。这样可以实现代码的复用和灵活性。

相关推荐
cjz38997 小时前
规则树:把一百行if-else拆成一棵树
设计模式
Adellle10 小时前
设计模式指南 (Java 版) ㊁
java·开发语言·设计模式
爱和冰阔落10 小时前
【Linux网络】JsonCpp 怎么实现序列化?从 Request/Response 到网络计算器消息设计
linux·运维·网络·php
eggwyw11 小时前
PHP8.5怎么用ffmpeg提取视频里的字幕轨道
开发语言·php
是2的10次方啊11 小时前
设计模式与生活⑱:工资还没焐热,账单已经凑成一摞
设计模式
百思不得小李1 天前
一个复杂的动态表单是如何实现的
前端·设计模式
我叫黑大帅1 天前
PHP 常驻 Worker 中 MySQL 连接中断问题报告
后端·面试·php
国科安芯1 天前
人在回路中的总线:商业空间站环境控制与生命保障系统CANFD网络的可靠性与功能安全
网络·嵌入式硬件·安全·架构·php·抗辐射
爱你真是太好了1 天前
上下文组成以及如何压缩
设计模式
freejackman1 天前
【工程化】从“单兵作战”到“多引擎架构”:基于门面模式的重构实战
大数据·数据库·hive·sql·测试工具·设计模式·架构