在PHP中的数组对象中搜索值

时间:2013-01-30 08:32:31

标签: php arrays object arrayobject

Array
(
    [0] => Array
        (
            [ADADCD] =>       
        )
    [1] => Array
        (
            [ADADCD] => ?     
        )

    [2] => Array
        (
            [ADADCD] => HOSP1 
        )

    [3] => Array
        (
            [ADADCD] => HOSP2 
        )

    [4] => Array
        (
            [ADADCD] => H1    
        )

)

我们有这样的数组,我想搜索特定的值,如 HOSP2 ,在索引处获取值的过程是什么。

4 个答案:

答案 0 :(得分:3)

试试array_search

$key = array_search(array('ADADCD' => 'HOSP1'), $inputArray);

答案 1 :(得分:3)

遍历数组并返回找到您要查找的值的索引。

$searchIndex = -1;
foreach ( $yourArray as $k => $v ) {
  if ( $v['ADADCD'] == 'search value' ) {
    $searchIndex = $k;
    break;
  }
}

答案 2 :(得分:0)

您可以结合使用foreach()in_array()

因此,首先使用foreach()循环遍历数组的所有索引。

foreach ($array as $key => $subarray)
   if (in_array($string, $subarray))
       return $key;

所以,现在对于这样的数组:

Array
(
    [0] => Array
        (
            [ADADCD] =>       
        )
    [1] => Array
        (
            [ADADCD] => ?     
        )

    [2] => Array
        (
            [ADADCD] => HOSP1 
        )

    [3] => Array
        (
            [ADADCD] => HOSP2 
        )

    [4] => Array
        (
            [ADADCD] => H1    
        )
)

输出

2

小提琴:http://phpfiddle.org/main/code/t6b-g9r

答案 3 :(得分:-1)

<?php
$array = your array;
$key = array_search('HOSP2', $array);
echo $key;
?>

输出:ADADCD

http://php.net/manual/en/function.array-search.php