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

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

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

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

)

このような配列があります.HOSP2のような特定の値を検索したい.インデックスで値を取得するプロセスは何ですか.

4

4 に答える 4

3

試してみてくださいarray_search

$key = array_search(array('ADADCD' => 'HOSP1'), $inputArray);
于 2013-01-30T08:35:31.337 に答える
3

配列をループして、探している値が見つかったインデックスを返します。

$searchIndex = -1;
foreach ( $yourArray as $k => $v ) {
  if ( $v['ADADCD'] == 'search value' ) {
    $searchIndex = $k;
    break;
  }
}
于 2013-01-30T08:35:47.680 に答える
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

于 2013-01-30T08:36:09.643 に答える
-2
<?php
$array = your array;
$key = array_search('HOSP2', $array);
echo $key;
?>

出力: ADADCD

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

于 2013-01-30T08:35:01.257 に答える