以下是一个简单的 PHP 适配器模式的示例:
// 目标接口
interface Target {
public function request();
}
// 适配者
class Adaptee {
public function specificRequest() {
return "Specific request";
}
}
// 适配器
class Adapter implements Target {
private $adaptee;
public function __construct(Adaptee $adaptee) {
$this->adaptee = $adaptee;
}
public function request() {
return $this->adaptee->specificRequest();
}
}
// 客户端代码
$adaptee = new Adaptee();
$adapter = new Adapter($adaptee);
echo $adapter->request(); // 输出 "Specific request"
在这个例子中,Target 是目标接口,定义了客户端期望的接口。Adaptee 是适配者类,它有一个不同于 Target 的接口。Adapter 是适配器类,它实现了目标接口,并在内部持有一个适配者对象,通过适配者的方法来实现目标接口的方法。
通过适配器模式,客户端可以使用适配器对象,而无需直接与适配者进行交互。这样,适配器隐藏了适配者的具体实现,使得适配者与客户端之间的耦合度降低。适配器模式在集成不同系统或库时非常有用,因为它允许你使用已有的代码而不需要修改其源代码。
转载请注明出处:http://www.pingtaimeng.com/article/detail/11940/PHP