1.哈希
1.哈希类型之hMset,hGetAll
// 批量设置HASH表
$redis->hMset('zcz',array('name'=>'rocky','age'=>27));
//hGetAll key 返回hash key对应所有的field和value
$res = $redis->hGetAll('zcz');
dump($res);
//返回结果
array(2) {
["name"] => string(5) "rocky"
["age"] => string(2) "27"
}
2. 哈希类型之hIncrBy ,hIncrByFloat
// hSet() 添加一个value到hash中
$redis->hSet('z','k1','1');
$redis->hSet('z','k2','2');
$redis->hSet('z','k3','v3');
// hIncrBy key k key自增某一个值,如果key不存在,自增后get(key)=k 整形
$redis->hIncrBy('z','k1',99);
// hIncrByFloat key 98.00 增加key对应的值98.00 浮点型
$redis->hIncrByFloat('z','k2',98.00);
$res = $redis->hGetAll('z');
dump($res);
//结果
array(3) {
["k1"] => string(3) "100"
["k2"] => string(3) "100"
["k3"] => string(2) "v3"
}
3.哈希类型之hExists,hLen
// hSet() 添加一个value到hash中
$redis->hSet('z','k1','v1');
$redis->hSet('z','k2','v2');
$redis->hSet('z','k3','v3');
// hExists() 判断hash表中是否存在指定的key
$res1 = $redis->hExists('z','k1');
dump($res1); // bool(true)
$res2 = $redis->hExists('z','k4');
dump($res2); //bool(false)
//hLen 查看hash key中有几个值
$res3 = $redis->hLen('z');
dump($res3); //int(3)
4.哈希类型之hVals
// hSet() 添加一个value到hash中
$redis->hSet('z','k1','v1');
$redis->hSet('z','k2','v2');
$redis->hSet('z','k3','v3');
// hVals() 获取hash表中所有的value,以数组形式返回
$res = $redis->hVals('z');
dump($res);
//结果
array(3) {
[0] => string(2) "v1"
[1] => string(2) "v2"
[2] => string(2) "v3"
}
5.哈希类型之hKeys
// hSet() 添加一个value到hash中
$redis->hSet('z','k1','v1');
$redis->hSet('z','k2','v2');
$redis->hSet('z','k3','v3');
// hKeys() 获取hash表中的keys,以数组形式返回
$res = $redis->hKeys('z');
dump($res);
//结果
array(3) {
[0] => string(2) "k1"
[1] => string(2) "k2"
[2] => string(2) "k3"
}
6.哈希类型之hDel
// hSet() 添加一个value到hash中
$redis->hSet('z','k1','v1');
$redis->hSet('z','k2','v2');
$redis->hSet('z','k3','v3');
// hDel() 删除指定的元素
$redis->hDel('z','k1');
$res = $redis->hGetAll('z');
dump($res);
//结果
array(2) {
["k2"] => string(2) "v2"
["k3"] => string(2) "v3"
}
7.哈希类型之hSetNx
// hSetNx() key不存在,才设置value
$res1 = $redis->hSetNx('z','k1','v1');
$res2 = $redis->hSetNx('z','k1','v2');
var_dump($res1);//bool(true)
var_dump($res2);//bool(false)
本文是关于ThinkPHP5中如何操作Redis哈希的详细教程,涵盖了hMset、hGetAll、hIncrBy、hIncrByFloat、hExists、hLen、hVals、hKeys、hDel及hSetNx等方法的使用,帮助开发者掌握Redis哈希类型的多种操作。
849

被折叠的 条评论
为什么被折叠?



