Руководство по поиску в массивах PHP 8 с примерами

FavoriteLoadingДобавить в избранное

В этом руководстве мы рассмотрим, как выполнять поиск в массивах с помощью встроенных функций PHP 8. PHP предлагает широкий спектр встроенных функций для решения различных ситуаций в мире программирования.
Работа с массивами в php упрощается благодаря некоторым стандартным встроенным функциям, таким как array_search, array_key_exists, keys и in_array . Мы узнаем, как искать массивы в PHP ниже:

Поиск в массиве с использованием функции PHP array_search

Введите значение в качестве первого параметра в функцию array_search(), и эта функция php будет искать ключ переданного значения в массиве (2-й параметр). Второй параметр — это сам массив, в котором нужно искать. Затем он вернет соответствующий ключ из коллекции массивов. Однако он вернет false, если значение не будет найдено. Взгляните на пример ниже:

<?php
$myarray = [
'Интерны',
'Меч',
'Универ',
'Молодёжка'
];
// найти "Меч" в $myarray
var_dump( array_search('Меч', $myarray) );
// вывод: int(1)
?>

Как вы можете видеть в приведенном выше примере, функция PHP array_search вернула int(1)значение, потому что в массиве было найдено совпадение.

Пример строгого параметра:

Это необязательный параметр, который в основном используется для поиска идентичных значений в массиве, значение по умолчанию — false.
Узнайте, что происходит, когда для строгого значения установлено значение false:

<?php
$myarray = [
15,
19,
33,
10,
19,
13,
20
];
$value = 19;
var_dump( array_search($value, $myarray) );
// вывод: int(1)
?>

Давайте посмотрим, как будет вести себя функция array_search, когда для аргумента strict установлено значение true:

<?php
$myarray = [
15,
19,
33,
10,
19,
13,
20
];
$value = "19";
var_dump( array_search($value, $myarray, true) );
// Вывод: bool(false)
?>

Получить ключи массива, используя функцию PHP array_keys

Получить ключи массива можно с помощью функции array_keys() в PHP . Этот метод принимает массивы в качестве аргумента и возвращает почти каждый ключ массива. Однако, если вы укажете значение поиска в качестве второго параметра в функции array_keys, то она вернет ключ, если он найден в массиве.
Пример получения одного ключа из массива с переданным значением

<?php
$car_colors = [
'bmw' => 'тёмно-синий',
'ford' => 'чёрный',
'volvo' => 'синий',
'suzuki' => 'красный'
];
print_r( array_keys($car_colors, 'красный') );
// вывод: Array ( [0] => suzuki )
?>

Получить все ключи из массива PHP

<?php
$car_colors = [
'bmw' => 'тёмно-синий',
'ford' => 'чёрный',
'volvo' => 'синий',
'suzuki' => 'красный'
];
print_r( array_keys($car_colors) );
/* вывод: Array ( [0] => bmw [1] => ford [2] => volvo [3] => suzuki ) */
?>

Получить значение в массиве с помощью функции PHP in_array

Функция in_array в php используется для получения определенного значения в массиве. Он возвращает либо true, либо false. Это очень полезная функция для определения того, существует ли значение в массиве или нет.
Этот метод принимает 3 параметра. В 1-м параметре передайте значение, которое необходимо найти. Второй параметр принимает массив.

<?php
$movies = [
'Такси',
'Двойной удар',
'Терминатор',
'Человек паук'
];
if (in_array("Двойной удар", $movies)) {
echo "Найдено значение";
}
else {
echo "Значение не существует";
}
/* вывод: найдено значение */
?>

Предоставляется `type`функции in_array как третий необязательный параметр, если этот параметр имеет значение true, он ищет строку поиска в массиве.

Получить ключ в массивах с помощью функции PHP array_key_exists

Функция array_key_exists() используется для проверки того, существует ли в массиве массив для определенного ключа или нет. Это ключ существует. Он возвращает true. Если значение не существует, возвращается значение false.

<?php
$car_colors = [
'bmw' => 'тёмно-синий',
'ford' => 'чёрный',
'volvo' => 'синий',
'suzuki' => 'красный'
];
if (array_key_exists("volvo", $car_colors)) {
echo "Ключ существует в массиве!";
}
else {
echo "Ключ не существует в массиве!";
}
/* вывод: Ключ существует в массиве! */
?>

Посмотрите, что происходит, когда значение не существует в массиве:

<?php
$car_colors = [
'bmw' => 'тёмно-синий',
'ford' => 'чёрный',
'volvo' => 'синий',
'suzuki' => 'красный'
];
if (array_key_exists("lamborghini", $car_colors)) {
echo "Ключ существует в массиве!";
}
else {
echo "Ключ не существует в массиве!";
}
/* вывод: Ключ не существует в массиве! */
?>
Написать Администратору

Вы можете написать Администратору сайта.

отправить