Hashes 相关
================================
hDel - 删除一个哈希 key
hExists - 检查哈希 key是否存在
hGet - 获得某哈希 key 的值
hGetAll - 获得一个哈希表中所有的 key 和 value
hIncrBy - 给哈希表中某 key 增加一个整数值
hIncrByFloat - 给哈希表中某 key 增加一个浮点数值
hKeys - 获得哈希表中所有的 key
hLen - 哈表中 key 的数量
hMGet - 获得哈希表中多个 key 的值
hMSet - 给哈希表设置多个 key 的值
hSet - 给哈希表中某个 key 设置值
hSetNx - 当哈希表中不存在某 key 时,给该 key 设置一个值
hVals - 获得哈希表中所有的值
hSet
-----------------------------------
给哈希表中某个 key 设置值.如果值已经存在, 返回 false
参数:
key 哈希表名
hashKey
value
返回值:
LONG 如果成功设置,返回 1, 如果 key 已经存在,会替换成新值,且返回 0。失败返回 0
示例:
$redis->delete('h')
$redis->hSet('h', 'key1', 'hello');
$redis->hGet('h', 'key1');
$redis->hSet('h', 'key1', 'plop');
$redis->hGet('h', 'key1');
hSetNx
-----------------------------------
当哈希表中不存在某 key 时,给该 key 设置一个值
参数:
key 哈希表名
hashKey
value
返回值:
BOOL: 成功返回 TRUE. 失败返回 FALSE.
示例:
$redis->delete('h')
$redis->hSetNx('h', 'key1', 'hello');
$redis->hSetNx('h', 'key1', 'world');
hGet
-----------------------------------
获得某哈希 key 的值.如果 hash 表不存在或对应的 key 不存在,返回 false
参数:
key
hashKey
返回值:
STRING ,如果 hash 表不存在或对应的 key 不存在,返回 false
示例:
$redis->delete('h')
$redis->hSet('h', 'key1', 'hello');
$redis->hGet('h', 'key1');
hLen
-----------------------------------
哈表中 key 的数量
参数:
key
返回值:
LONG 哈表中 key 的数量.如果 hash 表不存在,或者对应的 key 的值不是 hash 类型,返回 false
示例:
$redis->delete('h')
$redis->hSet('h', 'key1', 'hello');
$redis->hSet('h', 'key2', 'plop');
$redis->hLen('h');
hDel
-----------------------------------
删除一个哈希 key.如果 hash 表不存在或对应的 key 不存在,返回 false\
参数:
key
hashKey
返回值:
BOOL: 成功返回 TRUE. 失败返回 FALSE.
示例:
$redis->delete('h')
$redis->hSet('h', 'key1', 'hello');
$redis->hSet('h', 'key2', 'plop');
$redis->hSet('h', 'key2');
hKeys
-----------------------------------
获得哈希表中所有的 key
参数:
Key: key
返回值:
数组
示例:
$redis->delete('h');
$redis->hSet('h', 'a', 'x');
$redis->hSet('h', 'b', 'y');
$redis->hSet('h', 'c', 'z');
$redis->hSet('h', 'd', 't');
var_dump($redis->hKeys('h'));
输出:
array(4) {
[0]=>
string(1) "a"
[1]=>
string(1) "b"
[2]=>
string(1) "c"
[3]=>
string(1) "d"
}
顺序是随机的
hVals
-----------------------------------
获得哈希表中所有的值
参数:
参数:
Key
返回值:
数组
示例:
$redis->delete('h');
$redis->hSet('h', 'a', 'x');
$redis->hSet('h', 'b', 'y');
$redis->hSet('h', 'c', 'z');
$redis->hSet('h', 'd', 't');
var_dump($redis->hVals('h'));
输出:
array(4) {
[0]=>
string(1) "x"
[1]=>
string(1) "y"
[2]=>
string(1) "z"
[3]=>
string(1) "t"
}
顺序是随机的
hGetAll
-----------------------------------
获得一个哈希表中所有的 key 和 value
示例:
$redis->delete('h');
$redis->hSet('h', 'a', 'x');
$redis->hSet('h', 'b', 'y');
$redis->hSet('h', 'c', 'z');
$redis->hSet('h', 'd', 't');
var_dump($redis->hGetAll('h'));
输出:
array(4) {
["a"]=>
string(1) "x"
["b"]=>
string(1) "y"
["c"]=>
string(1) "z"
["d"]=>
string(1) "t"
}
顺序是随机的
hExists
-----------------------------------
检查哈希 key是否存在
参数:
key
memberKey
返回值:
BOOL: 存在返回 true, 不存在返回 false
示例:
$redis->hSet('h', 'a', 'x');
$redis->hExists('h', 'a');
$redis->hExists('h', 'NonExistingKey');
hIncrBy
-----------------------------------
给哈希表中某 key 增加一个整数值
参数:
key
member
value: (integer) 要增加的整数值
返回值:
LONG 增加后的值
示例:
$redis->delete('h');
$redis->hIncrBy('h', 'x', 2);
$redis->hIncrBy('h', 'x', 1);
hIncrByFloat
-----------------------------------
给哈希表中某 key 增加一个浮点数值
参数:
key
member
value: (float) 要增加的浮点数值
返回值:
FLOAT 增加后的值
示例:
$redis->delete('h');
$redis->hIncrByFloat('h','x', 1.5);
$redis->hIncrByFLoat('h', 'x', 1.5);
$redis->hIncrByFloat('h', 'x', -3.0);
hMSet
-----------------------------------
给哈希表设置多个 key 的值
参数:
key
members: key → value array
返回值:
BOOL
示例:
$redis->delete('user:1');
$redis->hMset('user:1', array('name' => 'Joe', 'salary' => 2000));
hMGet
-----------------------------------
获得哈希表中多个 key 的值
示例:
$redis->delete('h');
$redis->hSet('h', 'field1', 'value1');
$redis->hSet('h', 'field2', 'value2');
$redis->hmGet('h', array('field1', 'field2'));
- 二:redis 的hash类型相关操作
=====================二种:hash类型================== 介绍:redis -> hash是一个string类型的field和value的映射表 hash ...
- Redis中hash表中的field的value自增可以用hincrby
Redis HINCRBY命令用于增加存储在字段中存储由增量键哈希的数量.如果键不存在,新的key被哈希创建.如果字段不存在,值被设置为0之前进行操作. 回复整数,字段的增值操作后的值. redis ...
- 透过Redis源码探究Hash表的实现
转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com/archives/667 本文使用的Redis 5.0源码 概述 我们在学习 Redis ...
- window注册表相关
参考: https://baike.baidu.com/item/REG_EXPAND_SZ/9102962 一 注册表的相关概念 windows注册表相关api中名字起的比较混乱, 在这放一张从网上 ...
- redis对hash进行的相关操作
redis对hash类型操作的相关命令以及如何在python使用这些命令 redis对hash类型操作的命令: 命令 语法 概述 返回值 Redis Hdel 命令 hdel key field [f ...
- Redis原理再学习04:数据结构-哈希表hash表(dict字典)
哈希函数简介 哈希函数(hash function),又叫散列函数,哈希算法.散列函数把数据"压缩"成摘要,有的也叫"指纹",它使数据量变小且数据格式大小也固定 ...
- 【*】Redis实战场景中相关问题
一.Redis简介 redis主要解决的问题 分布式缓存是分布式系统中的重要组件,主要解决高并发.大数据场景下,热点数据访问的性能问题,提供高性能的数据快速访问. 使用缓存常见场景 项目中部分数据访问 ...
- redis的hash操作在集中式session中的应用
在集群部署时,为了高可用性的目的,往往把session进行共享,共享分为两种:session复制和集中式管理. redis在session集中式管理中可以起到比较大的作用. 制约session集中式共 ...
- C++ STL hash表用法
C++ STL unordered_map用法 在C++11中,unordered_map作为一种关联容器,替代了hash_map,unordered_map的底层实现是hash表,所以被称为无序关联 ...
随机推荐
- 实例介绍Cocos2d-x物理引擎:HelloPhysicsWorld
我们通过一个实例介绍一下,在Cocos2d-x 3.x中使用物理引擎的开发过程,熟悉这些API的使用.这个实例的运行后的场景,当场景启动后,玩家可以触摸点击屏幕,每次触摸时候,就会在触摸点生成一个新的 ...
- Word 2003 出现 向程序发送命令时出现问题 的 解决方案
这种原因出现的问题是word的模板出现问题. 解决方案是重新让word生成Norma.dot文档. 步骤: 1,按住视窗键+R或者开始菜单搜索文件和程序,粘贴 %appdata%\microsoft\ ...
- vm安装mac系统
零:起因想学习IOS开发,但是mac pro和mac mini都舍不得买,去apple店体验了几次mac不怎么喜欢,so… 一:原料VMware-workstation-full-12.0.0-298 ...
- 关于TCP的两个小练习_第一个博客~
先来一个本地的,客户端发送请求,服务端接收请求的简单代码 1 package com.TCP.java; 2 3 import java.io.IOException; 4 import java.i ...
- HTML5新增结构标签
引言 在本节中,笔者将向大家讲述三部分内容,分别介绍HTML5时代的召唤,跟HTML4的区别,以及HTML5中带来的新的结构标签. HTML5时代的召唤 HTML4与HTML5的区别 HTML5新结构 ...
- CorelDRAW 文件实用工具 CDRTools 2
随着 CorelDRAW 更新脚步越来越频繁,版本之间兼容性问题越来越突出,特别是跨版本之间打开会有很多问题,比如:文字跑位.透镜变向.位图出错.颜色改变,甚至会造成文件损坏.最好的办法就是哪一个版本 ...
- Python字符串内建处理函数
#coding=utf-8 __author__ = 'Administrator' # 字符串处理函数 s1 = "study python string function , I lov ...
- CentOS安装,更新Python
1.查看当前Python版本 python -V 2.查看当前CentOS版本 cat /etc/redhat-release 3.安装所有的开发工具包 yum groupinstall " ...
- Linux 启动直接进入 console,
我的电脑上有两块显卡,上次fedora更新后,自动安装了nvidia的驱动, 然后悲剧发生了.再也不能够正常进行图形界面了.所以需要进入CONSOLE. 1. 当系统启动时,停止grub menu自动 ...
- js 手机端触发事事件、javascript手机端/移动端触发事件
处理Touch事件能让你跟踪用户的每一根手指的位置.你可以绑定以下四种Touch事件: touchstart: // 手指放到屏幕上的时候触发 touchmove: // 手指在屏幕上移动的时候触发 ...