Поиск значения в массиве объекта в PHP
Array
(
[0] => Array
(
[ADADCD] =>
)
[1] => Array
(
[ADADCD] => ?
)
[2] => Array
(
[ADADCD] => HOSP1
)
[3] => Array
(
[ADADCD] => HOSP2
)
[4] => Array
(
[ADADCD] => H1
)
)
У нас есть такой массив, я хочу найти определенное значение, например HOSP2, каков процесс получения значения по индексу.
4 ответа
Просто попробуйте с array_search
$key = array_search(array('ADADCD' => 'HOSP1'), $inputArray);
Цикл по массиву и возвращает индекс, по которому вы найдете искомое значение.
$searchIndex = -1;
foreach ( $yourArray as $k => $v ) {
if ( $v['ADADCD'] == 'search value' ) {
$searchIndex = $k;
break;
}
}
Вы можете использовать комбинацию 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
<?php
$array = your array;
$key = array_search('HOSP2', $array);
echo $key;
?>
Выход: ADADCD