Как сделать поиск в php массиве по значению
Ответы
Roman Ashikov
24 ноября 2021
Можно использовать встроенную функцию array_search()
, она возвращает ключ найденного элемента. Затем мы можем получить и сам элемент по этому ключу.
<?php
$numbers = [1, 2, 'salad', 'potato'];
$potatoIndex = array_search('potato', $numbers); // 3
print_r($numbers[$potatoIndex]); //=> potato
0
0
Аслан Аутлев
08 ноября 2022
Поиск значения с помощью цикла foreach()
.
foreach ($array as $value) {
...
}
foreach ($array as $key => $value) {
...
}
Если значение подразумевает не полное соответствие, а частичное, то применяют обычно цикл с проверкой на вхождение искомого значения в значениях массива:
<?php
$array = [
'key1' => 'value1',
'key2' => 'value2',
'key3' => 'value3',
'key4' => 'value4',
'key5' => 'value5',
];
$result = '';
foreach ($array as $value) {
if (str_contains($value, '5')) {
$result = $value;
}
}
echo($result); // => value5
0
0