天天看點

Redis-PHP-Hash 表相關API

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');

hSetNx

當哈希表中不存在某 key 時,給該 key 設定一個值

BOOL: 成功傳回 TRUE. 失敗傳回 FALSE.

$redis->hSetNx('h', 'key1', 'hello');

$redis->hSetNx('h', 'key1', 'world');

hGet

獲得某哈希 key 的值.如果 hash 表不存在或對應的 key 不存在,傳回 false

key

STRING ,如果 hash 表不存在或對應的 key 不存在,傳回 false

hLen

哈表中 key 的數量

LONG 哈表中 key 的數量.如果 hash 表不存在,或者對應的 key 的值不是 hash 類型,傳回 false

$redis->hSet('h', 'key2', 'plop');

$redis->hLen('h');

hDel

删除一個哈希 key.如果 hash 表不存在或對應的 key 不存在,傳回 false\

$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

var_dump($redis->hVals('h'));

  string(1) "x"

  string(1) "y"

  string(1) "z"

  string(1) "t"

hGetAll

獲得一個哈希表中所有的 key 和 value

var_dump($redis->hGetAll('h'));

  ["a"]=>

  ["b"]=>

  ["c"]=>

  ["d"]=>

hExists

檢查哈希 key是否存在

memberKey

BOOL: 存在傳回 true, 不存在傳回 false

$redis->hExists('h', 'a');

$redis->hExists('h', 'NonExistingKey');

hIncrBy

給哈希表中某 key 增加一個整數值

member

value: (integer) 要增加的整數值

LONG 增加後的值

$redis->hIncrBy('h', 'x', 2);

$redis->hIncrBy('h', 'x', 1);

hIncrByFloat

給哈希表中某 key 增加一個浮點數值

value: (float) 要增加的浮點數值

FLOAT 增加後的值

$redis->hIncrByFloat('h','x', 1.5);

$redis->hIncrByFLoat('h', 'x', 1.5);

$redis->hIncrByFloat('h', 'x', -3.0);

hMSet

給哈希表設定多個 key 的值

members: key → value array

BOOL

$redis->delete('user:1');

$redis->hMset('user:1', array('name' => 'Joe', 'salary' => 2000));

hMGet

獲得哈希表中多個 key 的值

$redis->hSet('h', 'field1', 'value1');

$redis->hSet('h', 'field2', 'value2');

$redis->hmGet('h', array('field1', 'field2'));如何聯系我:【萬裡虎】www.bravetiger.cn

【QQ】3396726884 (咨詢問題100元起,幫助解決問題500元起)

【部落格】http://www.cnblogs.com/kenshinobiy/

繼續閱讀