dspym82000 2014-06-21 10:21 采纳率: 100%
浏览 38
已采纳

PHP搜索多维关联数组

I am trying to search a multi-dimensional associative array and change a value after searching. Here is what my array looks like

 $arr=Array ( [0] => Array ( [1] => 
    Array ( [keyword] => 2014 
            [count] => 97 
            [percent] => 4.91 )))

So what I am trying to do is to search for keyword and if found then increase the count on that particular index where keyword was found.

So I am trying to do something like:

if(in_array("2014", $arr))
{
//then add 100 to count that is 100+97

}

So what will be the best way to go about this.

Note: I am trying to search a value in the array and if found then update the value of count key on that particular index. The last part is as important as first.

Ahmar

  • 写回答

3条回答 默认 最新

  • doushang7209 2014-06-21 11:00
    关注

    you can use that code:

    $arr = Array(
        0 => Array(
            1 => Array(
                'keyword' => 2014,
                'count' => 97,
                'percent' => 4.91
            )
        )
    );
    
    foreach ($arr as &$arr1) {
    
        foreach ($arr1 as &$arr2) {
    
            if (2014 == $arr2['keyword']) {
                $arr2['count'] += 100;
            }
    
        }
    }
    
    unset($arr2, $arr1);
    

    Result:

    array(1) {
      [0]=>
      array(1) {
        [1]=>
        array(3) {
          ["keyword"]=>
          int(2014)
          ["count"]=>
          int(197)
          ["percent"]=>
          float(4.91)
        }
      }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
  • ¥20 yolov5自定义Prune报错,如何解决?