Redis 键(Keys)
Redis 键命令用于管理 redis 的键。
操作方法
方法列表
方法名称 | 参数 | 说明 | 备注 |
---|---|---|---|
del | …$keys | 删除一个键 | $key可传一个array,也可以传多个可变参数 |
unlink | …$keys | 非阻塞删除一个键 | $key可传一个array,也可以传多个可变参数 |
dump | $key | 序列化 | |
exists | $key | 查询是否存在 | |
expire | $key, $expireTime = 60 | 给key设定过期时间(秒) | |
expireAt | $key, $expireTime | 以UNIX时间戳格式设置key的过期时间 | expireAt的作用和expire类似,都用于为key设置过期时间。 不同在于expireAt命令接受的时间参数是UNIX时间戳(unix timestamp)。At,顾名思义,在未来的某个时间点过期 |
pExpire | $key, $expireTime = 60000 | 给key设定过期时间(毫秒) | |
keys | $pattern | 匹配key | |
move | $key, $db | 移动key | 集群模式不能使用 |
persist | $key | 移除key的过期时间 | |
pTTL | $key | 返回毫秒过期时间 | |
ttl | $key | 返回过期时间 | |
randomKey | 随机返回一个key | ||
rename | $key, $new_key | 修改key的名字 | 集群模式不能使用 |
renameNx | $key, $new_key | newkey不存在时,修改key名字 | 集群模式不能使用 |
type | $key | 返回key储存的数据类型 |
del和unlink都可以传一个数组,或者传 …数组(可变参数),如果第一个参数为数组,则后面的参数全部将忽略
在集群中,del和unlink都是拆分key,判断key的solt进行一个个执行
基本使用
go(function () {
$redis = new \EasySwoole\Redis\Redis(new \EasySwoole\Redis\Config\RedisConfig([
'host' => '127.0.0.1',
'port' => '6379',
'auth' => 'easyswoole',
'serialize' => \EasySwoole\Redis\Config\RedisConfig::SERIALIZE_NONE
]));
$key = 'test123213Key';
$redis->select(0);
$redis->set($key, 123);
$data = $redis->dump($key);
var_dump($data);
$data = $redis->dump($key . 'x');
var_dump($data);
$data = $redis->exists($key);
var_dump($data);
$data = $redis->expire($key, 1);
var_dump($data);
\Swoole\Coroutine::sleep(2);
var_dump($redis->exists($key));
$redis->expireAt($key, 1593570849);
\Swoole\Coroutine::sleep(1);
var_dump($redis->exists($key));
$redis->pExpire($key, 1 * 100);
\Swoole\Coroutine::sleep(0.1);
var_dump($redis->exists($key));
$redis->set($key, 123);
$data = $redis->keys("{$key}");
var_dump($data);
$redis->select(1);
$redis->del($key);
$redis->select(0);
$data = $redis->move($key, 1);
var_dump($data);
$data = $redis->exists($key);
var_dump($data);
$redis->select(0);
$redis->set($key, 123);
$data = $redis->expire($key, 1);
var_dump($data);
$data = $redis->persist($key);
var_dump($data);
$redis->expire($key, 1);
$data = $redis->pTTL($key);
var_dump($data);
$data = $redis->ttl($key);
var_dump($data);
$data = $redis->randomKey();
var_dump($data);
$data = $redis->rename($key, $key . 'new');
var_dump($data);
var_dump($redis->expire($key . 'new'));
var_dump($redis->expire($key));
$data = $redis->renameNx($key, $key . 'new');
var_dump($data);
$redis->renameNx($key . 'new', $key);
$data = $redis->renameNx($key, $key . 'new');
var_dump($data);
$data = $redis->type($key);
var_dump($data);
$data = $redis->type($key . 'new');
var_dump($data);
$data = $redis->del($key);
var_dump($data);
$data = $redis->del('a','b','c');
var_dump($data);
$data = $redis->del(['a','b','c']);
var_dump($data);
$data = $redis->unlink($key);
var_dump($data);
$data = $redis->unlink('a','b','c');
var_dump($data);
$data = $redis->unlink(['a','b','c']);
var_dump($data);
});
当前内容版权归 EasySwoole 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 EasySwoole .