类的适配器模式
原理:通过继承特性来实现适配器功能。
class Phone
{
public function typecPhone()
{
echo "信息从Typec口的手机输出。";
}
}
interface Vga
{
public function vgaInterface();
}
class Typec2Vga1 extends Phone implements Vga
{
public function vgaInterface()
{
$this->typecPhone();
echo "接收到Type-c口信息,信息转换成VGA接口中...";
echo "信息已转换成VGA接口,显示屏可以对接。";
}
}
对象的适配器模式
原理:通过组合方式来实现适配器功能。
class Phone
{
public function typecPhone()
{
echo "信息从Typec口的手机输出。";
}
}
interface Vga
{
public function vgaInterface();
}
class Typec2Vga2 implements Vga
{
private $phone;
public function __construct(Phone $phone)
{
$this->phone = $phone;
}
public function vgaInterface()
{
$this->phone->typecPhone();
echo "接收到Type-c口信息,信息转换成VGA接口中...";
echo "信息已转换成VGA接口,显示屏可以对接。";
}
}
$Typec2Vga = new Typec2Vga2(new Phone());
$Typec2Vga->vgaInterface();