批量获取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 相关文章推荐
PHP读MYSQL中文乱码的解决方法
Dec 17 PHP
php获得当前的脚本网址
Dec 10 PHP
php GD绘制24小时柱状图
Jun 28 PHP
PHP 一个页面执行时间类代码
Mar 05 PHP
PHPThumb PHP 图片缩略图库
Mar 11 PHP
一个显示某段时间内每个月的方法 返回由这些月份组成的数组
May 16 PHP
PHP CodeBase:将时间显示为"刚刚""n分钟/小时前"的方法详解
Jun 06 PHP
php函数间的参数传递(值传递/引用传递)
Sep 23 PHP
完善CodeIgniter在IDE中代码提示功能的方法
Jul 19 PHP
php微信开发之自定义菜单完整流程
Oct 08 PHP
php 判断字符串编码是utf-8 或gb2312实例
Nov 01 PHP
Laravel中9个不经常用的小技巧汇总
Apr 16 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
标准版Eclipse搭建PHP环境的详细步骤
2015/11/18 PHP
PHP错误机制知识汇总
2016/03/24 PHP
PHP substr()函数参数解释及用法讲解
2017/11/23 PHP
php+redis实现商城秒杀功能
2020/11/19 PHP
PHP实现动态获取函数参数的方法示例
2018/04/02 PHP
thinkphp整合系列之极验滑动验证码geetest功能
2019/06/18 PHP
Laravel5.5 实现后台管理登录的方法(自定义用户表登录)
2019/09/30 PHP
Laravel自动生成UUID,从建表到使用详解
2019/10/24 PHP
javascript 面向对象继承
2009/11/26 Javascript
iframe 父窗口和子窗口相互的调用方法集锦
2010/12/15 Javascript
js遍历、动态的添加数据的小例子
2013/06/22 Javascript
js 遍历json返回的map内容示例代码
2013/10/29 Javascript
jQuery+ajax+asp.net获取Json值的方法
2016/06/08 Javascript
js基础之DOM中元素对象的属性方法详解
2016/10/28 Javascript
node.js操作mysql简单实例
2017/05/25 Javascript
使用微信小程序开发弹出框应用实例详解
2018/10/18 Javascript
使用 Opentype.js 生成字体子集的实例代码详解
2020/05/25 Javascript
微信小程序收藏功能的实现代码
2020/06/19 Javascript
python动态监控日志内容的示例
2014/02/16 Python
Python对文件操作知识汇总
2016/05/15 Python
PyQt5 多窗口连接实例
2019/06/19 Python
windows下Python安装、使用教程和Notepad++的使用教程
2019/10/06 Python
python实现在一个画布上画多个子图
2020/01/19 Python
Python Mock模块原理及使用方法详解
2020/07/07 Python
Python变量及数据类型用法原理汇总
2020/08/06 Python
浅谈HTML5 Web Worker的使用
2018/01/05 HTML / CSS
娇韵诗香港官网:Clarins香港
2020/08/13 全球购物
十八届三中全会学习方案
2014/02/16 职场文书
乡镇信息公开实施方案
2014/03/23 职场文书
亮剑精神演讲稿
2014/05/23 职场文书
运动会加油稿50字
2015/07/21 职场文书
2016年党员公开承诺书范文
2016/03/24 职场文书
解决jupyter notebook启动后没有token的坑
2021/04/24 Python
Python pyecharts绘制条形图详解
2022/04/02 Python
CSS控制继承中的height能变为可继承吗
2022/06/10 HTML / CSS
GPU服务器的多用户配置方法
2022/07/07 Servers