您的位置:首页 > 数据库 > Redis

Redis-PHP-Hash 表相关API

2015-07-01 14:28 274 查看
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'));
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: