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 操作调试的方法
Jul 12 PHP
PHP输出XML到页面的3种方法详解
Jun 06 PHP
php实现aes加密类分享
Feb 16 PHP
跟我学Laravel之请求(Request)的生命周期
Oct 15 PHP
php程序员应具有的7种能力小结
Nov 27 PHP
分享一段PHP制作的中文拼音首字母工具类
Dec 11 PHP
php中 $$str 中 &quot;$$&quot; 的详解
Jul 06 PHP
PHP 根据key 给二维数组分组
Dec 09 PHP
PHP异常处理定义与使用方法分析
Jul 25 PHP
laravel框架语言包拓展实现方法分析
Nov 22 PHP
yii框架结合charjs实现统计30天数据的方法
Apr 04 PHP
tp5框架前台无限极导航菜单类实现方法分析
Mar 29 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函数
2010/01/11 PHP
生成ubuntu自动切换壁纸xml文件的php代码
2010/07/17 PHP
thinkphp的CURD和查询方式介绍
2013/12/19 PHP
国产PHP开发框架myqee新手快速入门教程
2014/07/14 PHP
PHP函数checkdnsrr用法详解(Windows平台用法)
2016/03/21 PHP
javascript 函数式编程
2007/08/16 Javascript
LBS blog sql注射漏洞[All version]-官方已有补丁
2007/08/26 Javascript
Javascript YUI 读码日记之 YAHOO.util.Dom - Part.2 0
2008/03/22 Javascript
JQuery之focus函数使用介绍
2013/08/20 Javascript
js onload处理html页面加载之后的事件
2013/10/30 Javascript
全面接触神奇的Bootstrap导航条实战篇
2016/08/01 Javascript
jQuery监听文件上传实现进度条效果的方法
2016/10/16 Javascript
js前端解决跨域问题的8种方案(最新最全)
2016/11/18 Javascript
vue中component组件的props使用详解
2017/09/04 Javascript
AngularJS实现注册表单验证功能
2017/10/16 Javascript
vue利用better-scroll实现轮播图与页面滚动详解
2017/10/20 Javascript
动手写一个angular版本的Message组件的方法
2017/12/16 Javascript
vue点击input弹出带搜索键盘并监听该元素的方法
2018/08/25 Javascript
jQuery实现的老虎机跑动效果示例
2018/12/29 jQuery
原生js实现二级联动菜单
2019/11/27 Javascript
探索node之事件循环的实现
2020/10/30 Javascript
python实现汉诺塔方法汇总
2016/07/25 Python
对python创建及引用动态变量名的示例讲解
2018/11/10 Python
对python中的six.moves模块的下载函数urlretrieve详解
2018/12/19 Python
python中p-value的实现方式
2019/12/16 Python
Python如何将将模块分割成多个文件
2020/08/04 Python
CSS3解析抖音LOGO制作的方法步骤
2019/04/11 HTML / CSS
性能服装:HYLETE
2018/08/14 全球购物
美国工业用品采购网站:Zoro.com
2020/10/27 全球购物
在购买印度民族服饰:Soch
2020/09/15 全球购物
简历的自我评价
2014/02/03 职场文书
中秋寄语大全
2014/04/11 职场文书
团支部推优材料
2014/05/21 职场文书
鲁迅故居导游词
2015/02/05 职场文书
中职班主任培训心得体会
2016/01/07 职场文书
用Python生成会跳舞的美女
2022/01/18 Python