• 技术文章 >后端开发 >php教程

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

    2016-07-29 08:45:37原创545
    通过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比较取出差,再去一一设置。

    以上就介绍了memcache 批量获取memcache值并按key的顺序返回的实现代码,包括了memcache方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:memcache
    上一篇:photoshop学习 php学习笔记 面向对象中[接口]与[多态性]的应用 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • PHP Hyperf 3.0 发布!新功能速览• 详解PHP怎么实现旋转图片验证• 简单理解PHP超级全局变量• 一起聊聊PHP的路由与伪静态应用• PHP中几种常见的开发模式
    1/1

    PHP中文网