在多维数组中搜索值

时间:2016-04-03 17:58:44

标签: php arrays

我正在尝试搜索数组中的值。我的数组格式如下:

Array
(
    [2] => Array([0] => [HEADER])    
    [3] => Array([0] => "ACCESSION #"
                 [1] => "F4216027")    
    [4] => Array([0] => "ACTIVATION CODE"
                 [1] => "PGMWZ-PUSUU")
    [5] => Array([0] => "CUSTOMER FIRST NAME"
                 [1] => "JAMES")
);

如果我正在尝试搜索"CUSTOMER FIRST NAME"。我试过以下功能。但没有结果

function searchForValue($id, $array) {
   foreach ($array as $key => $val) {
       if ($val[0] === $id) {
           return $key;
       }
   }
   return null;
}

预期输出是父索引的关键:[5]

请帮我摆脱这个。提前谢谢。

1 个答案:

答案 0 :(得分:1)

使用foreachin_array函数的简单解决方案:

$search_word = "CUSTOMER FIRST NAME";
$parent_key = null;

// $arr is your initial array
foreach ($arr as $k => $v) {
    if (in_array($search_word, $v)) $parent_key = $k;
}

print_r($parent_key);  // 5