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部分常见问题总结
Oct 09 PHP
如何在PHP中进行身份认证
Oct 09 PHP
PHP文件上传实例详解!!!
Jan 02 PHP
提高PHP编程效率 引入缓存机制提升性能
Feb 15 PHP
php数组去重的函数代码
Feb 03 PHP
PHP获取客户端真实IP地址的5种情况分析和实现代码
Jul 08 PHP
php中json_encode UTF-8中文乱码的更好解决方法
Sep 28 PHP
php简单获取目录列表的方法
Mar 24 PHP
基于PHP后台的Android新闻浏览客户端
May 23 PHP
功能强大的PHP POST提交数据类
Jul 15 PHP
PHP将URL转换成短网址的算法分享
Sep 13 PHP
PHP设计模式(观察者模式)
Jul 07 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中的插件机制原理和实例
2014/07/08 PHP
PHP return语句另类用法不止是在函数中
2014/09/17 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
2018/06/16 PHP
类似GMAIL的Ajax信息反馈显示
2010/02/16 Javascript
Jquery replace 字符替换实现代码
2010/12/02 Javascript
对Jquery中的ajax再封装,简化操作示例
2014/02/12 Javascript
Javascript实现鼠标右键特色菜单
2015/08/04 Javascript
JavaScript计算某一天是星期几的方法
2015/08/05 Javascript
jQuery插件实现表格隔行变色及鼠标滑过高亮显示效果代码
2016/02/25 Javascript
JS中的hasOwnProperty()和isPrototypeOf()属性实例详解
2016/08/11 Javascript
解析ajaxFileUpload 异步上传文件简单使用
2016/12/30 Javascript
微信小程序request出现400的问题解决办法
2017/05/23 Javascript
AngularJS实现的自定义过滤器简单示例
2019/02/02 Javascript
js实现类似iphone的网页滑屏解锁功能示例【附源码下载】
2019/06/10 Javascript
js+HTML5 canvas 实现简单的加载条(进度条)功能示例
2019/07/16 Javascript
mpvue 页面预加载新增preLoad生命周期的两种方式
2019/10/17 Javascript
[52:09]2014 DOTA2华西杯精英邀请赛 5 25 NewBee VS DK第二场
2014/05/26 DOTA
Python中操作文件之write()方法的使用教程
2015/05/25 Python
Python中装饰器学习总结
2018/02/10 Python
利用python画出折线图
2018/07/26 Python
python 根据时间来生成唯一的字符串方法
2019/01/14 Python
django 自定义filter 判断if var in list的例子
2019/08/20 Python
Python文件路径名的操作方法
2019/10/30 Python
Python切片列表字符串如何实现切换
2020/08/06 Python
Python Pygame实现俄罗斯方块
2021/02/19 Python
详解CSS3阴影 box-shadow的使用和技巧总结
2016/12/03 HTML / CSS
NYX Professional Makeup英国官网:美国平价专业彩妆品牌
2019/11/13 全球购物
党组织公开承诺书
2014/03/29 职场文书
家长学校培训材料
2014/08/20 职场文书
家庭财产分割协议范文
2014/11/24 职场文书
交通事故死亡赔偿协议书
2014/12/03 职场文书
交通事故案件代理词
2015/05/23 职场文书
运动会广播稿20字
2015/08/19 职场文书
2016年“我们的节日·清明节”活动总结
2016/04/01 职场文书
修改MySQL的数据库引擎为INNODB的方法
2021/05/26 MySQL
python数字图像处理之对比度与亮度调整示例
2022/06/28 Python