PHP设计模式——适配器模式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP设计模式——适配器模式相关的知识,希望对你有一定的参考价值。

<?php

/**
 * 适配器模式
 * 适配器模式是将某个对象的接口适配为另一个对象所期望的接口
 * 
 * 在需要转化一个对象的接口用于另一个对象时,最好实现适配器模式对象
 */
class Weather {

    public $_info = NULL;

    public function __construct() {
        $this->_info = serialize(array(‘tep‘ => 24, ‘wind‘ => 2));
    }

    public function show() {
        return unserialize($this->_info);
    }

}

//调用原始接口 序列化形式
$we = new Weather();
$array = $we->show();
echo ‘旧接口<br>‘;
echo "温度:" . $array[‘tep‘] . "<br>";
echo "风力:" . $array[‘wind‘] . "<br><br>";

class JsonAdapter extends Weather {

    public function __construct() {
        parent::__construct();
        $tmp = unserialize($this->_info);
        $this->_info = json_encode($tmp);
    }

    public function show() {
        return json_decode($this->_info,TRUE);
    }

}
//调用原始接口 序列化形式
$we = new JsonAdapter();
$array = $we->show();
echo ‘新接口<br>‘;
echo "温度:" . $array[‘tep‘] . "<br>";
echo "风力:" . $array[‘wind‘] . "<br>";

 

以上是关于PHP设计模式——适配器模式的主要内容,如果未能解决你的问题,请参考以下文章

PHP设计模式之适配器模式

php设计模式--工厂模式

PHP设计模式——适配器模式

PHP设计模式之适配器模式

php PHP片段保存模式

PHP设计模式-适配器模式