set 命令

SET key value [EX seconds] [PX milliseconds] [NX|XX]

设置key为保持字符串value。如果key已经拥有一个值,则无论其类型如何,它都会被覆盖。

对于某个原本带有生存时间(TTL)的键来说, 当 SET 命令成功在这个键上执行时, 这个键原有的 TTL 将被清除。

从 Redis 2.6.12 版本开始, SET 命令可以传递参数

可选参数

  • EX second :设置键的过期时间为 second 秒。 SET key value EX second 效果等同于 SETEX key second value 。
  • PX millisecond :设置键的过期时间为 millisecond 毫秒。 SET key value PX millisecond 效果等同于 PSETEX key millisecond value 。
  • NX :只在键不存在时,才对键进行设置操作。 SET key value NX 效果等同于 SETNX key value 。
  • XX :只在键已经存在时,才对键进行设置操作。

SET、SETNX 、 SETEX 和 PSETEX

  • 更多说明请参考官网

历史

  • >= 2.6.12 增加了EX,PX,NX和XX选项。
  • >= 6.0 添加了KEEPTTL选项。
  • >= 6.2 添加了GET,EXAT和PXAT选项。
  • >= 7.0 允许NX和GET选项一起使用。

PhpRedis 扩展用法介绍

set


Description: Set the string value in argument as value of the key. If you’re using Redis >= 2.6.12, you can pass extended options as explained below

Parameters

Key
Value
Timeout or Options Array (optional). If you pass an integer, phpredis will redirect to SETEX, and will try to use Redis >= 2.6.12 extended options if you pass an array with valid values

Return value

Bool TRUE if the command is successful.

Examples
// Simple key -> value set
$redis->set('key', 'value');// Will redirect, and actually make an SETEX call
$redis->set('key','value', 10);// Will set the key, if it doesn't exist, with a ttl of 10 seconds
$redis->set('key', 'value', ['nx', 'ex'=>10]);// Will set a key, if it does exist, with a ttl of 1000 milliseconds
$redis->set('key', 'value', ['xx', 'px'=>1000]);

setEx, pSetEx


Description: Set the string value in argument as value of the key, with a time to live. PSETEX uses a TTL in milliseconds.

Parameters

Key
TTL
Value

Return value

Bool TRUE if the command is successful.

Examples
$redis->setEx('key', 3600, 'value'); // sets key → value, with 1h TTL.
$redis->pSetEx('key', 100, 'value'); // sets key → value, with 0.1 sec TTL.

setNx


Description: Set the string value in argument as value of the key if the key doesn’t already exist in the database.

Parameters

key
value

Return value

Bool TRUE in case of success, FALSE in case of failure.

Examples
$redis->setNx('key', 'value'); /* return TRUE */
$redis->setNx('key', 'value'); /* return FALSE */

predis用法介绍

set($key, $value, $expireResolution = null, $expireTTL = null, $flag = null)
setbit($key, $offset, $value)
setex($key, $seconds, $value)
setnx($key, $value)

Redis set命令详解相关推荐

  1. redis的lrange_Redis LRANGE 命令-Redis LRANGE命令详解教程-Redis LRANGE使用案例-嗨客网

    Redis LRANGE命令教程 下标参数 start 和 stop 都以 0 为底,也就是说,以 0 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推. 也可以使用负数下标,以 -1 表 ...

  2. redis debug命令详解

    redis debug命令提供了几个非常实用的debug功能,本文介绍下redis-2.8.19下的debug命令. debug segment 让redis发生段错误,如果开启了coredump,则 ...

  3. redis info命令详解

    以一种易于解释(parse)且易于阅读的格式,返回关于 Redis 服务器的各种信息和统计数值. 通过给定可选的参数 section ,可以让命令只返回某一部分的信息: server : 一般 Red ...

  4. Redis命令详解:Hashs

    Hash是一种String类型的field.value的映射表,因此,它非常适合存储对象.下面我们来一一介绍与Hash相关的命令. HDEL 最早可用版本:2.0.0 时间复杂度:O(N),其中N为要 ...

  5. Redis命令详解:Connection

    最近在学习Redis的相关知识,上一篇我们也介绍了Redis的安装方法和基本数据结构,后面就打算开一个新的系列文章:Redis命令详解.既是对基础的巩固,也是为了以后查询起来更方便. 整个系列会分为以 ...

  6. Redis AOF 持久化详解

    来自公众号:程序员历小冰 Redis 是一种内存数据库,将数据保存在内存中,读写效率要比传统的将数据保存在磁盘上的数据库要快很多.但是一旦进程退出,Redis 的数据就会丢失. 为了解决这个问题,Re ...

  7. 转-Redis AOF 持久化详解

    转自: https://juejin.cn/post/6844903902991630349 Redis AOF 持久化详解 Redis 是一种内存数据库,将数据保存在内存中,读写效率要比传统的将数据 ...

  8. [转]Redis内部数据结构详解-sds

    本文是<Redis内部数据结构详解>系列的第二篇,讲述Redis中使用最多的一个基础数据结构:sds. 不管在哪门编程语言当中,字符串都几乎是使用最多的数据结构.sds正是在Redis中被 ...

  9. HyperLogLog 命令详解

    HyperLogLog 命令详解 HyperLogLog 目前只支持3个命令,PFADD.PFCOUNT.PFMERGE PFADD 将元素加入到HyperLogLog数据结构中,如果 HyperLo ...

最新文章

  1. FaceNet: A Unified Embedding for Face Recognition and Clustering
  2. 云炬随笔20171213
  3. 【python-numpy 】中的随机打乱数据方法np.random.shuffle
  4. Asp.Net+Jquery.Ajax详解5-$.getScript
  5. Python中多线程和多处理的初学者指南
  6. Python机器学习:PCA与梯度上升:05高维数据映射成低维数据(封装一个PCA)
  7. 网络工程师(2) 操作系统
  8. NumPy中特别的数组函数 By Youki~
  9. brew 一直等待_等待高高时,可以做的小事...
  10. 通过ramdump 分析匿名页导致的TASK_UNINTERRUPTIBLE
  11. visio2010取消连接线交叉出的跨线
  12. Spring Boot 项目集成Windows域账户认证
  13. 玩转微信 | 炫酷的聊天满屏掉爱心系列,赶紧收藏
  14. DirectX、DirectShow关系等
  15. 教你如何学模电——三极管篇
  16. mse python_python3 MSE实现
  17. 【spark】Spark环境搭建(运行模式)
  18. DM9000C网卡驱动程序编写与测试
  19. RS|高分1号影像预处理
  20. 利用openCV+python进行HSV颜色识别,并结合滑动条动态改变目标颜色

热门文章

  1. EXCEL函数笔记1(数学函数、文本函数、日期函数)
  2. Python获取当前时间日期
  3. c语言 单词变复数_C语言,字符串,单数变复数
  4. 从普通人到圣人的十大境界
  5. STM8S_005_ADC采集单通道电压
  6. 我建了一个付费知识星球
  7. 关于@Transactional(readOnly = false)注解,数据新增修改Connection is read-only
  8. 利用html制作隔行变色表格,javascript实现table表格隔行变色的方法
  9. 中餐馆过程vs中餐馆特许经营
  10. 太吾绘卷第一世攻略_太吾绘卷功法攻略_太吾绘卷怎么玩 太吾绘卷新手攻略__单机攻略_跑跑车单机游戏网...