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中adodbzip类实例

本文实例讲述了php中adodbzip类程序代码。分享给大家供大家参考。具体如下: 复制代码 代码如下:<?php /**  * AdodbZip 1.1...

解析PHP中VC6 X86和VC9 X86的区别及 Non Thread Safe的意思

PHP现在推出5.3.0版本了,不过下载的时候有几个不同版本选择。那就是VC6 X86和VC9 X86。首先我来解答: VC6是什么?VC6就是legacy Visual Studio...

php实现获取及设置用户访问页面语言类

本文实例讲述了php实现获取及设置用户访问页面语言类,分享给大家供大家参考。具体分析如下: 该实例User Language Class 获取/设置用户访问的页面语言,如果用户没有设置访...

PHP抽象类与接口的区别详解

对于面向对象开发,抽象类与接口这两个东西是比较难理解的;就算是对于有一定经验的程序员来说也如此。下面根据自己的理解来讲述一下这两个东西,如有什么不对的,还望不吝赐教。 抽象类:是基于类来...

php常用表单验证类用法实例

本文实例讲述了php常用表单验证类用法。分享给大家供大家参考。具体如下: <?php /** * 页面作用:常用表单验证类 * 作 者:欣然随风 * QQ:276624...