php - redis做一个队列,为什么出队列是会少显示一个元素?
ringa_lee
ringa_lee 2017-04-11 10:15:37
[PHP讨论组]
$redis = new redis();

3 $redis->connect('127.0.0.1',6379);
4 $arr= array('h','e','l','l','o','w','o','r','l','d');
5 foreach($arr as $k =>$val){ //入队
6 $redis->rpush('list',$val);
7 }

6 while(true){ //出对
7 $get = $redis->lpop('list');
9 if($get)
10 {
11 echo '出队列--'.$get;
12 echo '';
13 }else{
14 echo '出队完成';
15 return false;
16 }
17
18 }

1) "e"

2) "l"

3) "l"

4) "o"

5) "w"

6) "o"

7) "r"

8) "l"

9) "d"

少了一个h

ringa_lee
ringa_lee

ringa_lee

全部回复(1)
PHP中文网
    <?php
    $redis = new \redis();
    $redis->connect('127.0.0.1', 6379);
    $arr = array('h', 'e', 'l', 'l', 'o', 'w', 'o', 'r', 'l', 'd');
    foreach ($arr as $k => $val) { //入队
        $redis->rpush('list', $val);
    }
    echo "队列总长度:".$redis->lLen('list');
    echo "<br/>";
    
    while (true) { //出对
        $get = $redis->lpop('list');
        if ($get) {
            echo '出队列--' . $get;
            echo '<br/>';
        } else {
            echo '出队完成';
            return false;
        }
    
    }
    这是你的代码,没有呀
    
队列总长度:10
出队列--h
出队列--e
出队列--l
出队列--l
出队列--o
出队列--w
出队列--o
出队列--r
出队列--l
出队列--d
出队完成
    
    
    
    
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号