php设计模式 Adapter(适配器模式)

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

<?php
/**
* 适配器模式
*
* 将一个类的接口转换成客户希望的另外一个接口,使用原本不兼容的而不能在一起工作的那些类可以在一起工作
*/

// 这个是原有的类型
class OldCache
{
public function __construct()
{
echo "OldCache construct<br/>";
}

public function store($key,$value)
{
echo "OldCache store<br/>";
}

public function remove($key)
{
echo "OldCache remove<br/>";
}

public function fetch($key)
{
echo "OldCache fetch<br/>";
}
}

interface Cacheable
{
public function set($key,$value);
public function get($key);
public function del($key);
}

class OldCacheAdapter implements Cacheable
{
private $_cache = null;
public function __construct()
{
$this->_cache = new OldCache();
}

public function set($key,$value)
{
return $this->_cache->store($key,$value);
}

public function get($key)
{
return $this->_cache->fetch($key);
}

public function del($key)
{
return $this->_cache->remove($key);
}
}

$objCache = new OldCacheAdapter();
$objCache->set("test",1);
$objCache->get("test");
$objCache->del("test",1);

相关文章

php无限极分类实现方法分析

php无限极分类实现方法分析

本文实例讲述了php无限极分类实现方法。分享给大家供大家参考,具体如下: 今天给大家带来的是php的无限极分类技术,本人把无限极分类划分为两种。 首先我把数据库表给大家看看,数据库是ta...

php缩放图片(根据宽高的等比例缩放)实例介绍

推荐一个简单实用的缩放图片工具 SimpleImage,参考http://www.white-hat-web-design.co.uk/blog/resizing-images-with...

require(),include(),require_once()和include_once()的异同

require()和include()有许多相似之处,也有些不同。理解它们的不同点非常重要,否则很容易犯错误。  我把这两个语句放在一起介绍,读者可以比较学习。  1...

php去除html标记的原生函数详解

     strip_tags 去掉 HTML 及 PHP 的标记。 语法: string strip_tags(string str); 传回值...

根据key删除数组中指定的元素实现方法

php数组中元素的存在方式是以键值对的方式('key'=>'value'),有时候我们需要根据键删除数组中指定的某个元素。 function bykey_reitem($a...