在多维数组中搜索数组索引

时间:2011-06-07 17:04:55

标签: php multidimensional-array

我有一个类似

的数组
Array ( 
     [0] => Array ( [0] => Array ( [SSN] => 123456789 [borrowerName] => Peter K  ) ) 
     [1] => Array ( [0] => Array ( [SSN] => 412516789 [borrowerName] => Jack P  ) ) 
     [2] => Array ( [0] => Array ( [SSN] => 999338999 [borrowerName] => Angel M  ) ) 
) 

我希望能够搜索SSN并找回它所在的索引

例如search($array,'SSN','412516789')应返回1

2 个答案:

答案 0 :(得分:2)

当然你需要一个foreach。不能这样做。

function search($array,$key,$value) {
  foreach($array as $k=>$v) {
    if ($v[0][$key]==$value)
      return $k;
  }
}

答案 1 :(得分:0)

这是在multidim数组中递归搜索的一些函数,您可能希望根据需要进行调整。

function findInMultiDim($array, $value){
    if(in_array($value,$array)) return TRUE;
    foreach($array as $v){
        if(is_array($v)){
            $result = findInMultiDim($v, $value);
            if($result === TRUE){
                return TRUE;
            }
        }
    }
    return FALSE;
}