常用php操作redis命令整理(二)哈希类型
HSET
将哈希表key中的域field的值设为value;如果field是哈希表中的一个新建域,并且值设置成功,返回1;如果哈希表中域field已经存在且旧值已被新值覆盖,返回0。
<?php
$redis->hset('hash1','key1','val1');
var_dump($redis->hset('hash1','key1','val1_new')); //将key为'key1' value为'val1_new'覆盖。返回0
var_dump($redis->hset('hash1','key2','val2')); //返回1
HGET
返回哈希表key中给定域field的值。当给定域不存在或是给定key不存在时,返回nil。
<?php
$res = $redis->hget('hash1','key1'); //取出表'hash1'中的key 'key1'的值,返回'val1_new'
var_dump($redis->hget('hash1','key3')); //不存在返回false
HMGET
返回哈希表key中,一个或多个给定域的值。
如果给定的域不存在于哈希表,那么返回一个nil值。
因为不存在的key被当作一个空哈希表来处理,所以对一个不存在的key进行HMGET操作将返回一个只带有nil值的表。
<?php
$redis->hset('hash1','key1','val1');
$arr = ['key1', 'key6'];
var_dump($redis->hmget('hash1',$arr)); //array(2) { ["key1"]=> string(4) "val1" ["key6"]=> bool(false) }
HGETALL
返回哈希表key中,所有的域和值。
在返回值里,紧跟每个域名(field name)之后是域的值(value),所以返回值的长度是哈希表大小的两倍。
以列表形式返回哈希表的域和域的值。 若key不存在,返回空列表。
<?php
$redis->hset('hash1','key1','val1');
$redis->hset('hash1','key2','val2');
var_dump($redis->hGetAll('hash1')); //array(2) { ["key1"]=> string(4) "val1" ["key2"]=> string(4) "val2" }
HDEL
删除哈希表key中的一个或多个指定域,不存在的域将被忽略。
<?php
var_dump($redis->hdel('hash1','key2')); //int(1) 删除成功返回1
HLEN
返回哈希表key中域的数量。
<?php
var_dump($redis->hlen('hash1')); //int(1)
HEXISTS
查看哈希表key中,给定域field是否存在。
如果哈希表含有给定域,返回1;不含有给定域,或key不存在,返回0。
<?php
var_dump($redis->HEXISTS('hash1','key1')); //bool(true)
var_dump($redis->HEXISTS('hash1','key6')); // bool(false)
HINCRBY
为哈希表key中的域field的值加上增量increment,也可以为负数,相当于对给定域进行减法操作。
如果key不存在,一个新的哈希表被创建并执行HINCRBY命令。
如果域field不存在,那么在执行命令前,域的值被初始化为0。
<?php
$redis->hset('hash1','key1','val1');
$redis->hset('hash1','key2','val2');
$redis->hincrby('hash1','key3',);
$redis->hincrby('hash1','key4',-);
var_dump($redis->hgetall('hash1')); //array(4) { ["key1"]=> string(4) "val1" ["key2"]=> string(4) "val2" ["key3"]=> string(1) "3" ["key4"]=> string(2) "-3" }
HKEYS
返回哈希表key中的所有域。当key不存在时,返回一个空表。
<?php
var_dump($redis->hkeys('hash1')); //array(4) { [0]=> string(4) "key1" [1]=> string(4) "key2" [2]=> string(4) "key3" [3]=> string(4) "key4" }
var_dump($redis->hkeys('hash6')); //array(0) { }
HVALS
返回哈希表key中的所有值。当key不存在时,返回一个空表。
<?php
var_dump($redis->hvals('hash1')); //array(4) { [0]=> string(4) "val1" [1]=> string(4) "val2" [2]=> string(1) "3" [3]=> string(2) "-3" }
var_dump($redis->hvals('hash5')); // array(0) { }
常用php操作redis命令整理(二)哈希类型的更多相关文章
- 常用php操作redis命令整理(三)LIST类型
LIST 头元素和尾元素:头元素指的是列表左端/前端第一个元素,尾元素指的是列表右端/后端第一个元素.举个例子,列表list包含三个元素:x, y, z,其中x是头元素,而z则是尾元素.空列表:指不包 ...
- 常用php操作redis命令整理(一)通用及字符串类型
Key相关操作 TYPE 类型检测,字符串返回string,列表返回 list,set表返回set/zset,hash表返回hash,key不存在返回0 <?php echo $redis-&g ...
- 常用php操作redis命令整理(五)ZSET类型
ZADD 向有序集合插入一个元素,元素关联一个数值,插入成功返回1,同时集合元素不可以重复, 如果元素已经存在返回 0 <?php var_dump($redis->zadd(,'A')) ...
- 常用php操作redis命令整理(四)SET类型
SADD 将一个或多个member元素加入到集合key当中.(从左侧插入,最后插入的元素在0位置),集合中已经存在TK 则返回false,不存在添加成功 返回true <?php var_dum ...
- Windows常用的一些DOS命令整理
Windows常用的一些DOS命令整理.. MS DOS 命令大全 ---清空Dos屏幕使用命令:cls -- Dos切换当前目录到D盘:cd d: 一.基础命令 1 dir 无参数:查看当前所在目录 ...
- redis命令学习(二) · THIS SPACE
列表(Lists)操作命令 Redis列表是简单的字符串列表,按照插入顺序排序. 你可以添加一个元素导列表的头部(左边)或者尾部(右边)LPUSH命令插入一个新的元素导头部,而RPUSH插入一个新元素 ...
- Redis命令拾遗二(散列类型)
本文版权归博客园和作者吴双共同所有,欢迎转载,转载和爬虫请注明原文地址 :博客园蜗牛NoSql系列地址 http://www.cnblogs.com/tdws/tag/NoSql/ Redis命令拾 ...
- redis学习 (key)键,Python操作redis 键 (二)
# -*- coding: utf-8 -*- import redis #这个redis 连接不能用,请根据自己的需要修改 r =redis.Redis(host=") 1. delete ...
- python操作redis命令
Python操作redis from redis import StrictRedis, ConnectionPoolredis_url="redis://:xxxx@112.27.10.1 ...
随机推荐
- COM组件技术名称解释
GUID:全局唯一标识. CLSID 或 ProgID :唯一地表示一个组件服务程序,那么根据这些ID,就可以加载运行组件,并为客户端程序提供服务了. IID :唯一的表示接口ID. COM 组件是运 ...
- Runtime 中的 _cmd、 IMP
IMP IMP-指向实际执行函数体的函数指针 #if !OBJC_OLD_DISPATCH_PROTOTYPES typedef void (*IMP)(void /* id, SEL, ... */ ...
- css - Position定位属性与层级关系
今天同事发现一个有意思的问题,关于position的层级关系的,他要不说我也没注意过 测试后果然有趣,有待深入研究: <!DOCTYPE html> <html> <he ...
- CSS-项目中遇到IE兼容问题,处理随笔
总是忘记给ie做特殊样式处理,以前打游击,不做也就算了,以后可不行,得对自己的“孩子”负责.. 一.先说IE老大的兼容 知道了一些常用的css属性兼容方法确实可以解决问题, 但我不知道我自己的ieTe ...
- linux 中 ll 命令显示 的大小 是什么单位的啊?
ll显示的是字节,可以使用-h参数来提高文件大小的可读性,另外ll不是命令,是ls -l的别名 ls -al 是以字节单位显示文件或者文件夹大小: 字节b,千字节kb, 1G=1024M=1024 ...
- [css]演示:纯CSS实现的右侧底部简洁悬浮效果
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <meta name ...
- jvm的内存模型
转自:https://www.cnblogs.com/dingyingsi/p/3760447.html 我们知道,计算机CPU和内存的交互是最频繁的,内存是我们的高速缓存区,用户磁盘和CPU的交互, ...
- Linux操作系统上ADSL拨号上网的方法详解
1.安装 yum install rp-pppoe.x86_64 2.配置PPPOE客户端软件 安装完软件包后,必须配置pppoe的配置文件/etc/ppp/pppoe.conf,从而让ADSL拨号时 ...
- spfile与pfile
SYS@ora11g>show parameter spfile NAME TYPE------------------------------------ ------------------ ...
- 求全局最小割(SW算法)
hdu3002 King of Destruction Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (J ...