使用 predis 操作 Redis 数据库,怎样设置 Key 的生命周期(expires)?
redis的配置及连接都OK了,就是有些操作不知道怎么实现,比如生命周期,前缀设置等。
以前用redis扩展中的类来写,实现起来非常简单:
$this->redis->set($key,$val,$expires);
这样就可以生效了,但是转了Laravel后,使用了默认的predis:
Redis::set($key,$val,$expires);
这样写就会报错,只能这样写:
Redis::set($key,$val);
可是这样写的key是无限期的,可我需要加上生命周期
好闹心啊,到底该怎么操作,有没有对predis操作熟悉的大神,给指点一下啊,谢谢!
关于 LearnKu
高认可度评论:
写程序最怕不看文档想当然.
Redis 里
SET的用法是这样的不是
所以你的写法换成这样就对了
via https://redis.io/commands/setex
@ImPerat0R 试过了,没用。把你的Cache::换成Redis::也试了,还是报错。
via https://redis.io/commands/setex
@binafor 非常感谢!这个有效,解决了我的问题!
@binafor 用
Redis::expire($key,$time);也可以写程序最怕不看文档想当然.
Redis 里
SET的用法是这样的不是
所以你的写法换成这样就对了
@TimJuly +1
@TimJuly 如果要加NX的话,PX还要加吗?因为我看PX紧紧跟在EX后面
@kylesean 不用,方括号括起来的是可选参数