使用PHP导出Redis数据到另一个Redis中的代码

 更新时间:2014年03月12日 16:44:57   作者:  
这篇文章主要介绍了使用PHP导出Redis数据到另一个Redis中的方法,需要的朋友可以参考下

从某个 Redis db 导出数据到另一个 Redis db 的PHP脚本:

复制代码 代码如下:
$from = '127.0.0.1:6200/6';
$to   = '127.0.0.1:6200/8';

$from_redis = redis_init($from);
$to_redis   = redis_init($to);

$keys  = $from_redis->keys('*');
$count = 0;
$total = count($keys);
foreach($keys as $key){
    if(++$count % 100 == 1){
        echo "$count/$total\n";
    }
    $type = $from_redis->type($key);
    switch($type){
        case Redis::REDIS_STRING:
            $val = $from_redis->get($key);
            $to_redis->set($key, $val);
            break;
        case Redis::REDIS_LIST:
            $list = $from_redis->lRange($key, 0, -1);
            foreach($list as $val){
                $to_redis->rPush($key, $val);
            }
            break;
        case Redis::REDIS_HASH:
            $hash = $from_redis->hGetAll($key);
            $to_redis->hMSet($key, $hash);
            break;
        case Redis::REDIS_ZSET:
            $zset = $from_redis->zRange($key, 0, -1, true);
            foreach($zset as $val=>$score){
                $to_redis->zAdd($key, $score, $val);
            }
            break;
    }
}

function redis_init($conf){
    $redis = new Redis();
    preg_match('/^([^:]+)(:[0-9]+)?\\/(.+)?/', $conf, $ms);
    $host = $ms[1];
    $port = trim($ms[2], ':');
    $db = $ms[3];
    $redis->connect($host, $port);
    $redis->select($db);
    return $redis;
}

相关文章

  • php实现的太平洋时间和北京时间互转的自定义函数分享

    php实现的太平洋时间和北京时间互转的自定义函数分享

    这篇文章主要介绍了php实现的太平洋时间和北京时间互转的自定义函数分享,主要靠date_default_timezone_set函数来实现,需要的朋友可以参考下
    2014-08-08
  • 使用PHP uniqid函数生成唯一ID

    使用PHP uniqid函数生成唯一ID

    生成唯一ID的应用场景非常普遍,如临时缓存文件名称,临时变量,临时安全码等,uniqid()函数基于以微秒计的当前时间,生成一个唯一的 ID。由于生成唯一ID与微秒时间关联,因此ID的唯一性非常可靠
    2015-11-11
  • thinkPHP框架实现的短信接口验证码功能示例

    thinkPHP框架实现的短信接口验证码功能示例

    这篇文章主要介绍了thinkPHP框架实现的短信接口验证码功能,涉及基于thinkPHP的ajax提交、随机数生成、短信接口调用、cookie操作等相关实现技巧,需要的朋友可以参考下
    2018-06-06
  • php判断电脑访问、手机访问的例子

    php判断电脑访问、手机访问的例子

    现在使用手机上网的人越来越多了,所以手机用户给网站带来流量也是非常可观的。但是对于只适合PC端的网站想让手机访问,那么体验度一定会很差,因为该站的css样式只适合用电脑浏览器访问。
    2014-05-05
  • CI框架中集成CKEditor编辑器的教程

    CI框架中集成CKEditor编辑器的教程

    CKEditor是在很多开发过程中都会用到的一个富文本编辑器,那么如何在CI框架中使用它呢?这里介绍了在CI下使用CKEditor的方法,版本比较低,是在CI 1.7.3下使用fckeditor 2.6.6。供大家参考。
    2014-06-06
  • Yii2框架操作数据库的方法分析【以mysql为例】

    Yii2框架操作数据库的方法分析【以mysql为例】

    这篇文章主要介绍了Yii2框架操作数据库的方法,结合实例形式分析了Yii2框架配置、连接mysql数据库及执行SQL进行增删改查等相关操作技巧,需要的朋友可以参考下
    2019-05-05
  • Yii2.0建立公共方法简单示例

    Yii2.0建立公共方法简单示例

    这篇文章主要介绍了Yii2.0建立公共方法,结合实例形式分析了Yii2.0建立公共方法的基本原理、步骤与相关操作注意事项,需要的朋友可以参考下
    2019-01-01
  • PHP利用超级全局变量$_POST来接收表单数据的实例

    PHP利用超级全局变量$_POST来接收表单数据的实例

    下面小编就为大家带来一篇PHP利用超级全局变量$_POST来接收表单数据的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • PHP基于GD库的缩略图生成代码(支持jpg,gif,png格式)

    PHP基于GD库的缩略图生成代码(支持jpg,gif,png格式)

    你可能会遇到这样的问题,在用户上传了一张图片后,得到这张图片的缩略图,PHP可以使用GD库生成缩略图,那么我们来探讨下,如何才能生成高质量的缩略图呢?
    2014-06-06
  • PHP代码判断设备是手机还是平板电脑(两种方法)

    PHP代码判断设备是手机还是平板电脑(两种方法)

    随着互联网移动设备的普及,很多网站都兼容手机端浏览,为了更好的让网页在手机端显示,我们都选择了使用CSS媒体查询制作响应式模版。本文给大家介绍PHP代码判断设备是手机还是平板电脑(两种方法),感兴趣的朋友一起学习吧
    2015-10-10

最新评论