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


Posted in PHP onJune 26, 2011
<?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木马攻击防御之道
Mar 24 PHP
php操作SVN版本服务器类代码
Nov 27 PHP
php线性表顺序存储实现代码(增删查改)
Feb 16 PHP
linux系统下php安装mbstring扩展的二种方法
Jan 20 PHP
成为好程序员必须避免的5个坏习惯
Jul 04 PHP
php socket客户端及服务器端应用实例
Jul 04 PHP
smarty内置函数config_load用法实例
Jan 22 PHP
PHP简单获取多个checkbox值的方法
Jun 13 PHP
Yii CGridView用法实例详解
Jul 12 PHP
php中的抽象方法和抽象类
Feb 14 PHP
php时间戳转换代码详解
Aug 04 PHP
PHP数组Key强制类型转换实现原理解析
Sep 01 PHP
php设计模式 Builder(建造者模式)
Jun 26 #PHP
php设计模式 DAO(数据访问对象模式)
Jun 26 #PHP
php设计模式 Decorator(装饰模式)
Jun 26 #PHP
php设计模式 Delegation(委托模式)
Jun 26 #PHP
php设计模式 Facade(外观模式)
Jun 26 #PHP
php设计模式 Factory(工厂模式)
Jun 26 #PHP
php设计模式 Interpreter(解释器模式)
Jun 26 #PHP
You might like
php查看当前Session的ID实例
2015/03/16 PHP
PHP实现统计在线人数功能示例
2016/10/15 PHP
thinkPHP5.1框架使用SemanticUI实现分页功能示例
2019/08/03 PHP
分享别人写的一个小型js框架
2007/08/13 Javascript
javascript中检测变量的类型的代码
2010/12/28 Javascript
jquery mobile的触控点击事件会多次触发问题的解决方法
2014/05/08 Javascript
JS简单计算器实例
2015/01/20 Javascript
浅谈JavaScript正则表达式分组匹配
2015/04/10 Javascript
学习AngularJs:Directive指令用法(完整版)
2016/04/26 Javascript
Bootstrap自动适应PC、平板、手机的Bootstrap栅格系统
2016/05/27 Javascript
JS控制弹出悬浮窗口(一览画面)的实例代码
2016/05/30 Javascript
AngularJs Modules详解及示例代码
2016/09/01 Javascript
jQuery表单验证简单示例
2016/10/17 Javascript
javascript中this关键字详解
2016/12/12 Javascript
Bootstrap Scrollspy源码学习
2017/03/02 Javascript
Vue.js 中的 v-model 指令及绑定表单元素的方法
2018/12/03 Javascript
jquery层次选择器的介绍
2019/01/18 jQuery
解决Vue调用springboot接口403跨域问题
2019/09/02 Javascript
python监控文件或目录变化
2016/06/07 Python
pandas string转dataframe的方法
2018/04/11 Python
Python字符串逆序输出的实例讲解
2019/02/16 Python
elasticsearch python 查询的两种方法
2019/08/04 Python
Python如何获取文件路径/目录
2020/09/22 Python
python使用Windows的wmic命令监控文件运行状况,如有异常发送邮件报警
2021/01/30 Python
Pytorch实现WGAN用于动漫头像生成
2021/03/04 Python
全天然狗零食:Best Bully Sticks
2016/09/22 全球购物
理肤泉美国官网:La Roche-Posay
2018/01/17 全球购物
合作协议书
2014/04/23 职场文书
计算机多媒体专业自荐信
2014/07/04 职场文书
2014年度工作总结报告
2014/12/15 职场文书
公安纪律作风整顿心得体会
2016/01/23 职场文书
2016年幼儿园庆六一开幕词
2016/03/04 职场文书
Python - 10行代码集2000张美女图
2021/05/23 Python
Python办公自动化之教你用Python批量识别发票并录入到Excel表格中
2021/06/26 Python
MongoDB安装使用并实现Python操作数据库
2021/06/28 MongoDB
PostgreSQL常用字符串分割函数整理汇总
2022/07/07 PostgreSQL