首页  >  文章  >  后端开发  >  PHP扩展PHPredis获取数据返回类似 :1数据

PHP扩展PHPredis获取数据返回类似 :1数据

WBOY
WBOY原创
2016-12-05 13:44:061289浏览

如题,项目使用了redislist队列,使用rpop获取数据时,有时会返回类似:1的值;在githubphpredisissues列表中发现 传送门,项目使用的版本为2.2.7版本,对于类似的问题,有解决方案吗?

回复内容:

如题,项目使用了redislist队列,使用rpop获取数据时,有时会返回类似:1的值;在githubphpredisissues列表中发现 传送门,项目使用的版本为2.2.7版本,对于类似的问题,有解决方案吗?

上代码

<code>while (true)
        {
            $list = $redis->blpop(DXKey::getKeyOfRunnerEmailTaskListPending(), 6);
            
            if (is_array($list) && count($list) == 2)
            {
                DXUtil::consoleLog(DXUtil::jsonEncode($list));
                $payload = $list[1];
                DXUtil::consoleLog('pop: ' . $payload);
                $task = @json_decode($payload, true);
                MailTaskRunner::runEmailTask($task);
            }
           
        }</code>

执行结果

<code>2016-11-23 19:23:07 start
2016-11-23 19:23:08 ["runner.email.task.list.pending","{\"time\":1479900188,\"type\":1,\"data\":{\"to_address\":\"wqcsimple@foxmail.com\",\"task_id\":1}}"]
2016-11-23 19:23:08 pop: {"time":1479900188,"type":1,"data":{"to_address":"wqcsimple@foxmail.com","task_id":1}}
2016-11-23 19:23:08 send success
</code>
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn