批量获取memcache值并按key的顺序返回的实现代码


Posted in PHP onJune 14, 2011

通过memcached的getMulti函数来批量获取如下15个ID的值。
31639,33878,177410,9735,589,12076,25953,22447,15368,15358,33853,26658,26659,12477,15366

$md->getMulti($arr_id);
返回的顺序:
line_31639,line_33878,line_177410,line_9735,line_589,line_12076,line_25953,line_22447,line_15368,line_15358,line_33853,line_26658,line_26659,line_12477,line_15366,

一台memcache时返回是正确的,在有多台memcache时就无法一一对应的按顺序返回。

这时需要使用Memcached::GET_PRESERVE_ORDER才能按顺序返回数据:
$arrs = $mem->getMulti($arr_id, $cas, Memcached::GET_PRESERVE_ORDER);
返回的顺序:
line_31639,line_33878,line_9735,line_589,line_22447,line_15358,line_33853,line_26658,line_177410,line_12076,line_25953,line_15368,line_26659,line_12477,line_15366,

这其中,如果有没有命中的变量,那么$cas就起到作用了。$cas返回了命中的变量,遍历$cas取出已命中的变量组成数据,然后通过array_diff函数与$arr_id比较取出差,再去一一设置。

PHP 相关文章推荐
如何使用Strace调试工具
Jun 03 PHP
php curl选项列表(超详细)
Jul 01 PHP
php权重计算方法代码分享
Jan 09 PHP
php验证是否是md5编码的简单代码
Apr 01 PHP
php实现复制移动文件的方法
Jul 29 PHP
php中简单的对称加密算法实现
Jan 05 PHP
ThinkPHP 3.2.2实现事务操作的方法
May 05 PHP
PHP实现创建微信自定义菜单的方法示例
Jul 14 PHP
ThinkPHP开发--使用七牛云储存
Sep 14 PHP
php判断目录存在的简单方法
Sep 26 PHP
PHP unset函数原理及使用方法解析
Aug 14 PHP
如何在Laravel之外使用illuminate组件详解
Sep 20 PHP
提高define性能的php扩展hidef的安装和使用
Jun 14 #PHP
php学习笔记 php中面向对象三大特性之一[封装性]的应用
Jun 13 #PHP
php学习笔记 面向对象的构造与析构方法
Jun 13 #PHP
php学习笔记 类的声明与对象实例化
Jun 13 #PHP
php学习笔记 PHP面向对象的程序设计
Jun 13 #PHP
php学习笔记 数组的常用函数
Jun 13 #PHP
PHP中的函数嵌套层数限制分析
Jun 13 #PHP
You might like
php自动加载机制的深入分析
2013/06/08 PHP
带密匙的php加密解密示例分享
2014/01/29 PHP
destoon网站转移服务器后搜索汉字出现乱码的解决方法
2014/06/21 PHP
在Laravel框架里实现发送邮件实例(邮箱验证)
2016/05/20 PHP
PHP的openssl加密扩展使用小结(推荐)
2016/07/18 PHP
简单的JS多重继承示例
2008/03/13 Javascript
Javascript面象对象成员、共享成员变量实验
2010/11/19 Javascript
让低版本浏览器支持input的placeholder属性(js方法)
2013/04/03 Javascript
使用Fullpage插件快速开发整屏翻页的页面
2017/09/13 Javascript
基于vue配置axios的方法步骤
2017/11/09 Javascript
原生JS+HTML5实现跟随鼠标一起流动的粒子动画效果
2018/05/03 Javascript
webpack4 CSS Tree Shaking的使用
2018/09/03 Javascript
Vue实现的父组件向子组件传值功能示例
2019/01/19 Javascript
Vue实现PC端靠边悬浮球的代码
2020/05/09 Javascript
JavaScript中条件语句的优化技巧总结
2020/12/04 Javascript
[04:26]2014DOTA2西雅图国际邀请赛 总决赛TOPPLAY
2014/07/22 DOTA
Python 连连看连接算法
2008/11/22 Python
wxPython框架类和面板类的使用实例
2014/09/28 Python
Python利用matplotlib.pyplot绘图时如何设置坐标轴刻度
2018/04/09 Python
Python实现将数据写入netCDF4中的方法示例
2018/08/30 Python
Python分布式进程中你会遇到的问题解析
2019/05/28 Python
python算法题 链表反转详解
2019/07/02 Python
Python PIL图片添加字体的例子
2019/08/22 Python
python3.7将代码打包成exe程序并添加图标的方法
2019/10/11 Python
Python3使用xlrd、xlwt处理Excel方法数据
2020/02/28 Python
MATCHESFASHION.COM法国官网:英国奢侈品零售商
2018/01/04 全球购物
美国椅子和沙发制造商:La-Z-Boy
2020/10/25 全球购物
正宗的澳大利亚Ugg靴子零售商:UGG Express
2020/04/19 全球购物
学生未请假就回家检讨书
2014/09/22 职场文书
2014城乡环境综合治理工作总结
2014/12/19 职场文书
关于清明节的演讲稿2015
2015/03/18 职场文书
2016年元旦致辞
2015/08/01 职场文书
技术入股合作协议书
2016/03/21 职场文书
欧元符号 €
2022/02/17 杂记
Spring Boot 使用 Spring-Retry 进行重试框架
2022/04/24 Java/Android
Win11 22H2 2022怎么更新? 获得Win1122H22022版本升级技巧
2022/09/23 数码科技