php redis队列类
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php redis队列类相关的知识,希望对你有一定的参考价值。
<?php
/*-------------------------------------------------
* redis驱动类,需要安装phpredis扩展
*-------------------------------------------------
*/
class QRedis{
private $_redis = null;
/*
* 构造器
*
*/
public function __construct(){
if($this->_redis === null){
try{
$redis = new Redis();
$hanedel = $redis->connect('127.0.0.1',6379);
if($hanedel){
$this->_redis = $redis;
}else{
echo 'redis服务器无法链接';
$this->_redis = false;
exit;
}
}catch(RedisException $e){
echo 'phpRedis扩展没有安装:' . $e->getMessage();
exit;
}
}
}
/*
* 队列尾追加
*
*
*/
public function addRlist($key,$value){
$result = $this->_redis->rPush($key,$value);
return $result;
}
/*
* 队列头追加
*
*
*/
public function addLlist($key,$value){
$result = $this->_redis->lPush($key,$value);
return $result;
}
/*
* 头出队列
*
*/
public function lpoplist($key){
$result=$this->_redis->lPop($key);
return $result;
}
/*
* 尾出队列
*
*/
public function rpoplist($key){
$result=$this->_redis->rPop($key);
return $result;
}
/*
* 查看队列
*
*/
public function showlist($key){
$result = $this->_redis->lRange($key, 0, -1);
return $result;
}
/**
* 队列数量
*
*/
public function listcount($key){
$result = $this->_redis->lSize($key);
return $result;
}
/*
* 清空队列
*
*/
public function clearlist($key){
$result = $this->_redis->delete($key);
return $result;
}
/*
* 获取redis资源对象
*
*/
public function getHandel(){
return $this->_redis;
}
}
?>
以上是关于php redis队列类的主要内容,如果未能解决你的问题,请参考以下文章
laravel5.6 基于redis,使用消息队列(邮件推送)
在php中 为啥不能使用redis类
用php-redis给全部用户发送邮件,数据量很大,思路应该是啥样的
php+redis简易消息队列
php+redis实现消息队列
Php +Redis 做消息队列