# EXPIREAT
将key的过期时间设置为UNIX时间戳
语法
EXPIREAT key unix-time-seconds [NX | XX | GT | LT]
从以下版本可用:
1.2.0
时间复杂度:
O(1)
ACL 类别:
@keyspace
,@write
,@fast
EXPIREAT
具有与EXPIRE
相同的效果和语义,但不是指定表示 TTL(生存时间)的秒数,而是使用绝对 Unix 时间戳
(自 1970 年 1 月 1 日以来的秒数)。过去的时间戳将立即删除密钥。
该命令的具体语义请参考EXPIRE
.
# 背景
EXPIREAT
引入是为了将 AOF 持久模式的相对超时转换为绝对超时。当然,它可以直接用于指定给定的密钥应该在未来的给定时间到期。
# 选项
该EXPIREAT
命令支持一组选项:
NX
-- 只有当密钥没有过期时才设置过期XX
-- 仅当密钥已过期时才设置过期GT
-- 仅当新的到期时间大于当前到期时间时才设置到期时间LT
-- 仅在新到期时间小于当前到期时设置到期
非易失性密钥被视为无限 TTLGT
和LT
。,GT
和选项是互斥的LT
。NX
# 返回
Integer,具体来说:
1
如果设置了超时。0
如果未设置超时。例如,键不存在,或者由于提供的参数而跳过了操作。
# 例子
redis> SET mykey "Hello"
"OK"
redis> EXISTS mykey
(integer) 1
redis> EXPIREAT mykey 1293840000
(integer) 1
redis> EXISTS mykey
(integer) 0
redis>
# 历史
- 从 Redis 版本 7.0.0 开始:添加了选项:
NX
、XX
和.GT``LT
# 反馈
如果您在此页面上发现问题,或有改进建议,请提交请求以合并或打开存储库中的问题。
← EXPIRE EXPIRETIME →