thinkphp5操作redis系列教程 ---哈希篇

本文是关于ThinkPHP5中如何操作Redis哈希的详细教程,涵盖了hMset、hGetAll、hIncrBy、hIncrByFloat、hExists、hLen、hVals、hKeys、hDel及hSetNx等方法的使用,帮助开发者掌握Redis哈希类型的多种操作。

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)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值