Keys


  • del,delete - 删除键
  • dump - 返回存储在指定键值的序列化版本。
  • exists - 确定键是否存在
  • expire,setTimeout,pexpire - 设置键的生存时间(以秒为单位)
  • expireAt,pexpireAt - 将密钥的到期时间设置为UNIX时间戳
  • keys,getKeys - 查找与给定模式匹配的所有键
  • scan - 扫描键空间中的键(Redis> = 2.8.0)
  • migrate - 将密钥从Redis实例原子传输到另一个实例
  • move - 将键移动到另一个数据库
  • object - 检查Redis对象的内部
  • persist - 从密钥中删除过期
  • randomKey - 从键空间返回随机密钥
  • rename,renameKey - 重命名键
  • renameNx - 重命名键,仅当新键不存在时
  • type - 确定存储在键上的类型
  • sort - 对列表中的元素,集合或排序集进行排序
  • ttl,pttl - 获取时间为一个键住
  • restore - 使用提供的序列化值创建密钥,以前通过dump获取。

scan

描述:扫描键的键空间

返回:Array,boolean:如果没有更多的键,此函数将返回一个键的数组或FALSE

参考网址:http://stackoverflow.com/questions/19910527/how-to-use-hscan-command-in-redis

$it = NULL; /* Initialize our iterator to NULL */
$redis->setOption(Redis::OPT_SCAN, Redis::SCAN_RETRY); /* retry when we get no keys back */
while($arr_keys = $redis->scan($it)) {
foreach($arr_keys as $str_key) {
echo "Here is a key: $str_key\n";
}
echo "No more keys to scan!\n";
}

Strings


  • append - 将值附加到键
  • bitCount - 计算字符串中的设置位
  • bitOp - 在字符串之间执行按位操作
  • decr,decrBy - 递减键的值
  • get - 获取键的值
  • getBit - 返回在key处存储的字符串值中偏移处的位值
  • getRange - 获取存储在键上的字符串的子字符串
  • getSet - 设置键的字符串值并返回其旧值
  • incr,incrBy - 递增键的值
  • incrByFloat - 将键的浮点值增加给定的量
  • mGet,getMultiple - 获取所有给定键的值
  • mSet,mSetNX - 将多个键设置为多个值
  • set - 设置键的字符串值
  • setBit - 设置或清除存储在键的字符串值中偏移处的位
  • setEx,pSetEx - 设置键的值和过期时间
  • setNx - 设置键的值,仅当键不存在时
  • setRange - 在指定偏移处开始的键处覆盖字符串的一部分
  • strLen - 获取存储在键中的值的长度

pSetEx

描述:PSETEX使用以毫秒为单位的TTL

$ redis-> pSetEx('key',100,'value'); //设置键→值,0.1秒TTL。

setNx

描述:如果键在数据库中不存在,则将参数中的字符串值设置为键的值。

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

incr, incrBy

描述:将存储在键上的数字增加1。 如果第二个参数被填充,它将被用作增量的整数值。

$redis->incr('key1'); / * key1不存在,在增加前设置为0 * /
                       / *,现在的值为1 * /
$redis->incr('key1'); /* 2 */
$redis->incr('key1'); /* 3 */
$redis->incr('key1'); /* 4 */
$redis->incrBy('key1', 10); /* 14 */

incrByFloat

描述:使用浮点精度递增键

$redis->incrByFloat('key1', 1.5); /* key1 didn't exist, so it will now be 1.5 */
$redis->incrByFloat('key1', 1.5); /* 3 */
$redis->incrByFloat('key1', -1.5); /* 1.5 */
$redis->incrByFloat('key1', 2.5); /* 4 */

mGet, getMultiple

描述:获取所有指定键的值。 如果一个或多个键不存在,数组将在键的位置包含FALSE。

$redis->set('key1', 'value1');
$redis->set('key2', 'value2');
$redis->set('key3', 'value3');
$redis->mGet(array('key1', 'key2', 'key3')); /* array('value1', 'value2', 'value3');
$redis->mGet(array('key0', 'key1', 'key5')); /* array(`FALSE`, 'value1', `FALSE`);

getSet

描述:设置一个值并返回该键上的上一个条目。

$redis->set('x', '42');
$exValue = $redis->getSet('x', 'lol'); // return '42', replaces x by 'lol'
$newValue = $redis->get('x')' // return 'lol'

move

描述:将键移动到其他数据库。

$redis->select(0);  // switch to DB 0
$redis->set('x', '42'); // write 42 to x
$redis->move('x', 1); // move to DB 1
$redis->select(1); // switch to DB 1
$redis->get('x'); // will return 42

rename, renameKey

描述:

$redis->set('x', '42');
$redis->rename('x', 'y');
$redis->get('y'); // → 42
$redis->get('x'); // → `FALSE

renameNx

描述:与重命名相同,但如果目标已存在,则不会替换密钥。 这与setNx的行为相同。

$redis->set('x', '42');
$redis->setTimeout('x', 3); // x will disappear in 3 seconds.
sleep(5); // wait 5 seconds
$redis->get('x'); // will return `FALSE`, as 'x' has expired.

expireAt, pexpireAt

这个适合设置从Unix时间戳。 钥匙的死亡日期,从纪元时间起的秒数。

描述:在项目上设置到期日期(时间戳)。 pexpireAt需要一个以毫秒为单位的时间戳。

$redis->set('x', '42');
$now = time(NULL); // current timestamp
$redis->expireAt('x', $now + 3); // x will disappear in 3 seconds.
sleep(5); // wait 5 seconds
$redis->get('x'); // will return `FALSE`, as 'x' has expired.

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基础知识之————php-Redis 常用命令专题的更多相关文章

  1. redis基础知识详解

    一.redis基础知识 1.Redis是什么Redis是一个开源的key-value存储系统. 和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表 ...

  2. 【进阶之路】Redis基础知识两篇就满足(一)

    导言 大家好,我是南橘,一名练习时常两年半的java练习生,这是我在博客园的第一篇文章,当然,都是要从别处搬运过来的,不过以后新的文章也会在博客园同步发布,希望大家能多多支持^_^ 这篇文章的出现,首 ...

  3. 【进阶之路】Redis基础知识两篇就满足(二)

    导言 大家好,我是南橘,一名练习时常两年半的java练习生,这是我在博客园的第二篇文章,当然,都是要从别处搬运过来的,不过以后新的文章也会在博客园同步发布,希望大家能多多支持^_^ 这篇文章的出现,首 ...

  4. redis学习-列表(list)常用命令

    redis学习-列表(list)常用命令   lpush:从列表左侧头部添加数据 rpush:从右侧尾部添加数据 lpop:从给左侧头部取出一个元素 rpop:从右侧尾部取出一个元素 lrange:取 ...

  5. Redis系列(二):Redis的5种数据结构及其常用命令

    上一篇博客,我们讲解了什么是Redis以及在Windows和Linux环境下安装Redis的方法, 没看过的同学可以点击以下链接查看: Redis系列(一):Redis简介及环境安装. 本篇博客我们来 ...

  6. Redis 02: redis基础知识 + 5种数据结构 + 基础操作命令

    Redis基础知识 1).测试redis服务的性能: redis-benchmark 2).查看redis服务是否正常运行: ping 如果正常---pong 3).查看redis服务器的统计信息: ...

  7. Greenplum入门——基础知识、安装、常用函数

    Greenplum入门——基础知识.安装.常用函数 2017年10月08日 22:03:09 在咖啡里溺水的鱼 阅读数:8709    版权声明:本文为博主原创,允许非商业性质转载但请注明原作者和出处 ...

  8. Redis基础知识之—— 缓存应用场景

    转载原文:http://www.cnblogs.com/jinshengzhi/articles/5225718.html 一.MySql+Memcached架构的问题 Memcached采用客户端- ...

  9. Redis基础知识补充及持久化、备份介绍(二)--技术流ken

    Redis知识补充 在上一篇博客<Redis基础认识及常用命令使用(一)--技术流ken>中已经介绍了redis的一些基础知识,以及常用命令的使用,本篇博客将补充一些基础知识以及redis ...

  10. 老司机带你玩转面试(1):缓存中间件 Redis 基础知识以及数据持久化

    引言 今天周末,我在家坐着掐指一算,马上又要到一年一度的金九银十招聘季了,国内今年上半年受到 YQ 冲击,金三银四泡汤了,这就直接导致很多今年毕业的同学会和明年毕业的同学一起参加今年下半年的秋招,这个 ...

随机推荐

  1. DE1-SOC开发板上搭建NIOS II处理器运行UCOS II

    DE1-SOC开发板上搭建NIOS II处理器运行UCOS II   今天在DE1-SOC的开发板上搭建NIOS II软核运行了UCOS II,整个开发过程比较繁琐,稍微有一步做的不对,就会导致整个过 ...

  2. linux命令:du 命令

    Linux du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的. 1.命令格式: du [选项][文件] 2.命令功能 ...

  3. div使用jqueryui 源码 | gridview多个功能的源码

    div使用jqueryui 源码 | gridview多个功能的源码 一.gridview 选中行 改变颜色,双击选中 改变颜色 protected void gv1_SelectedIndexCha ...

  4. Android 坐标与宽高研究getLeft() getTop() getRight()和getBottom()

    把view看做一个矩形,分别表示的是一个view的左边,上边,右边,下边距离他的父组件的距离. getRight() =getLeft() + getWidth() getBottom()= getT ...

  5. java中基础类型的初始值,以及一些平时不注意的小知识

    有时候总是卡在一些类型的初始值上,今天闲下来就来自己给自己记录一下. String   a; 如果直接打印会提示未初始化.并且未初始化的a不能比较. 这时,我们定义个person类 person{ S ...

  6. MVC模式:实现数据库中数据的增删改查功能

    *.数据库连接池c3p0,连接mysql数据库: *.Jquery使用,删除时跳出框,确定是否要删除: *.使用EL和JSTL,简化在jsp页面中插入的java语言 1.连接数据库 (1)导入连接数据 ...

  7. I love sneakers!(分组背包HDU3033)

    I love sneakers! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  8. Pie(二分POJ3122)

    Pie Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 12985   Accepted: 4490   Special Ju ...

  9. python中string.casefold和string.lower区别

    string.casefold和string.lower 区别 python 3.3 引入了string.casefold 方法,其效果和 string.lower 非常类似,都可以把字符串变成小写, ...

  10. Poj(3522),UVa(1395),枚举生成树

    题目链接:http://poj.org/problem?id=3522 Slim Span Time Limit: 5000MS   Memory Limit: 65536K Total Submis ...