简体   繁体   English

在PHP中的多维数组中搜索值

[英]Search value in multidimensional array in PHP

I am trying to search the value in an array. 我试图搜索数组中的值。 My array format is as below: 我的数组格式如下:

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")
);

If I am trying to search "CUSTOMER FIRST NAME" . 如果我要搜索"CUSTOMER FIRST NAME" I tried with below function. 我尝试了以下功能。 But no result 但是没有结果

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

And expected output is the key of parent index: [5] 而预期的输出是父索引的关键: [5]

Please help me to get out from this. 请帮助我摆脱困境。

Simple solution using foreach and in_array function: 使用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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM