rpoplpush的阻塞版本,在第三个参数中有一个完整的超时。

    参数:
    string $srcKey
    string $dstKey
    int $timeout
    返回:
    成功时移动的元素,超时时为FALSE

    1. <?php
    2. //连接本地的 Redis 服务
    3. $redis = new Redis();
    4. $redis->connect('10.1.3.15', 6379);
    5. $redis->auth('kuaicdn_redis_passwd');
    6. $redis->flushAll();
    7. $ret['exec']['a'][]=$redis->rPush('list_test_a','a1');
    8. $ret['exec']['a'][]=$redis->rPush('list_test_a','a2');
    9. $ret['exec']['a'][]=$redis->rPush('list_test_a','a3');
    10. $ret['exec']['b'][]=$redis->rPush('list_test_b','b1');
    11. $ret['exec']['b'][]=$redis->rPush('list_test_b','b2');
    12. $ret['exec']['b'][]=$redis->rPush('list_test_b','b3');
    13. $ret['data']=$redis->brpoplpush('list_test_a','list_test_b',1000);
    14. $ret['src'][]=$redis->lRange('list_test_a',0,-1);
    15. $ret['src'][]=$redis->lRange('list_test_b',0,-1);
    16. print_r($ret);
    17. ?>

    返回值:

    1. Array
    2. (
    3. [exec] => Array
    4. (
    5. [a] => Array
    6. (
    7. [0] => 1
    8. [1] => 2
    9. [2] => 3
    10. )
    11. [b] => Array
    12. (
    13. [0] => 1
    14. [1] => 2
    15. [2] => 3
    16. )
    17. )
    18. [data] => a3
    19. [src] => Array
    20. (
    21. [0] => Array
    22. (
    23. [0] => a1
    24. [1] => a2
    25. )
    26. [1] => Array
    27. (
    28. [0] => a3
    29. [1] => b1
    30. [2] => b2
    31. [3] => b3
    32. )
    33. )
    34. )