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
main.php
Dec 09 PHP
给apache2.2加上mod_encoding模块後 php5.2.0 处理url出现bug
Apr 12 PHP
PHP中session变量的销毁
Feb 27 PHP
PHP中使用Imagick实现各种图片效果实例
Jan 21 PHP
php实现模拟登陆方正教务系统抓取课表
May 19 PHP
PHP处理postfix邮件内容的方法
Jun 16 PHP
php中删除、清空session的方式总结
Oct 09 PHP
PHP获取链表中倒数第K个节点的方法
Jan 18 PHP
PHP常用日期加减计算方法实例小结
Jul 31 PHP
PHP解析url并得到url参数方法总结
Oct 11 PHP
PhpStorm 如何优雅的调试Hyperf的方法步骤
Nov 24 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 什么是PEAR?(第二篇)
2009/03/19 PHP
新浪SAE云平台下使用codeigniter的数据库配置
2014/06/12 PHP
PHP面向对象程序设计实例分析
2016/01/26 PHP
Zend Framework教程之Zend_Layout布局助手详解
2016/03/04 PHP
Smarty实现页面静态化(生成HTML)的方法
2016/05/23 PHP
PHP编程 SSO详细介绍及简单实例
2017/01/13 PHP
ThinkPHP 5 AJAX跨域请求头设置实现过程解析
2020/10/28 PHP
从父页面读取和操作iframe中内容方法
2009/07/25 Javascript
JQuery中对服务器控件 DropdownList, RadioButtonList, CheckboxList的操作总结
2011/06/28 Javascript
JavaScript高级程序设计 读书笔记之八 Function类及闭包
2012/02/27 Javascript
JS加jquery简单实现标签元素的显示或隐藏
2013/09/23 Javascript
jQuery事件用法实例汇总
2014/08/29 Javascript
javascript实现日期格式转换
2014/12/16 Javascript
JavaScript实现输入框(密码框)出现提示语
2016/01/12 Javascript
初步使用bootstrap快速创建页面
2016/03/03 Javascript
jQuery悬停文字提示框插件jquery.tooltipster.js用法示例【附demo源码下载】
2016/07/19 Javascript
Vue.js中的图片引用路径的方式
2017/07/28 Javascript
webpack打包react项目的实现方法
2018/06/21 Javascript
Taro集成Redux快速上手的方法示例
2018/06/21 Javascript
小程序scroll-view组件实现滚动的示例代码
2018/09/20 Javascript
2019最新21个MySQL高频面试题介绍
2020/02/06 Javascript
Vue项目结合Vue-layer实现弹框式编辑功能(实例代码)
2020/03/11 Javascript
如何利用JavaScript编写更好的条件语句详解
2020/08/10 Javascript
python编程开发之类型转换convert实例分析
2015/11/13 Python
Python无损音乐搜索引擎实现代码
2018/02/02 Python
python实时监控cpu小工具
2018/06/21 Python
Python中的单下划线和双下划线使用场景详解
2019/09/09 Python
Anaconda+Pycharm环境下的PyTorch配置方法
2020/03/13 Python
Anaconda+VSCode配置tensorflow开发环境的教程详解
2020/03/30 Python
美国皮靴公司自1863年:The Frye Company
2016/11/30 全球购物
StubHub西班牙:购买和出售全球活动门票
2017/06/05 全球购物
面向对象编程的优势是什么
2015/12/17 面试题
WebSphere面试题:在WebSphere里面如何部署一个应用
2015/08/02 面试题
“学雷锋活动月”总结
2014/03/09 职场文书
十八大演讲稿
2014/05/22 职场文书
单位一把手群众路线四风问题整改措施
2014/09/25 职场文书