PHP 中 Redis 常用操作(基础操作)

连接 redis 服务器,实例化 redis 对象

1
2
3
4
5
6
$redis = new Redis();
if (!$redis->connect('127.0.0.1', 6379)) {
trigger_error('Redis连接出错!!!', E_USER_ERROR);
} else {
echo "连接正常 \n";
}

获取所有的key(keys)

1
2
$data = $redis->keys('*');
var_dump($data);

判断键对应值的类型(type)

type() 方法用户获取一个key对应值的类型,返回值(1:string, 2:set, 3:list, 4:zset, 5:hash 6:未知)

删除缓存项(del)

1
$redis->del('用删除的key')

设置有效期(expire,expireAt)

expire() 设置某个时间段后过期

expireAt() 在某个时间点(时间戳)过期失效

1
2
3
$redis->set('user', 'user_123456');
$redis->expire('user', 3600); // 3600 秒后过期
$redis->expireAt('user', strtotime('2020-08-15 00:00:00'));

获取有效期(ttl)

ttl() 获取某个键的剩余有效期

1
2
$redis->ttl('key');  //获取剩余有效期,单位:秒(s)
$redis->pttl('key'); //获取剩余有效期,单位:毫秒(ms)

检测缓存项是否存在(exists)

exists() 方法用于检测某个key是否存在

1
2
3
4
5
6
$redis->set('age', 25);
if ($redis->exists('age')) {
echo '存在';
} else {
echo '不存在';
}

查看当前数据库key的数量(dbSize)

1
2
$dbSize = $redis->dbSize();
echo $dbSize;

清空当前数据库(flushDB)

1
2
$isFlushed = $redis->flushDB();
var_dump($isFlushed);

清空所有数据库(flushAll)

会清空所有库的数据,默认是0~15这16个数据库

1
2
$isFlushed = $redis->flushAll();
var_dump($isFlushed);