PHP中适配器模式如何实现及具体应用场景是什么?
- 内容介绍
- 文章标签
- 相关推荐
本文共计3172个文字,预计阅读时间需要13分钟。
本文示例讲述了PHP设计模式之适配器模式(Adapter)的原理与用法。
适配器模式,旨在将一个类的接口转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以一起工作。
以下为适配器模式的一个简单示例:
php// 原有类class OriginalInterface { public function originalMethod() { echo This is the original method.; }}
// 客户端期望的接口interface TargetInterface { public function targetMethod();}
// 适配器类class Adapter implements TargetInterface { private $original;
public function __construct(OriginalInterface $original) { $this->original=$original; }
public function targetMethod() { $this->original->originalMethod(); }}
// 使用示例$original=new OriginalInterface();$adapter=new Adapter($original);
$adapter->targetMethod(); // 输出:This is the original method.
这个适配器模式示例中,`OriginalInterface`是原有类,`TargetInterface`是客户端期望的接口,`Adapter`类实现了`TargetInterface`接口,并持有`OriginalInterface`的实例。在`Adapter`类中,`targetMethod()`方法调用了`OriginalInterface`的`originalMethod()`方法。
本文共计3172个文字,预计阅读时间需要13分钟。
本文示例讲述了PHP设计模式之适配器模式(Adapter)的原理与用法。
适配器模式,旨在将一个类的接口转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以一起工作。
以下为适配器模式的一个简单示例:
php// 原有类class OriginalInterface { public function originalMethod() { echo This is the original method.; }}
// 客户端期望的接口interface TargetInterface { public function targetMethod();}
// 适配器类class Adapter implements TargetInterface { private $original;
public function __construct(OriginalInterface $original) { $this->original=$original; }
public function targetMethod() { $this->original->originalMethod(); }}
// 使用示例$original=new OriginalInterface();$adapter=new Adapter($original);
$adapter->targetMethod(); // 输出:This is the original method.
这个适配器模式示例中,`OriginalInterface`是原有类,`TargetInterface`是客户端期望的接口,`Adapter`类实现了`TargetInterface`接口,并持有`OriginalInterface`的实例。在`Adapter`类中,`targetMethod()`方法调用了`OriginalInterface`的`originalMethod()`方法。

