Методы фильтрации и получения индексов совпадающих элементов в массивах PHP

В PHP, если вы хотите отфильтровать массив и получить индексы соответствующих элементов, вы можете использовать несколько методов. Вот несколько примеров:

Метод 1. Использование цикла foreach

$array = [1, 2, 3, 4, 5];
$filteredIndexes = [];
$searchValue = 3;
foreach ($array as $index => $value) {
    if ($value === $searchValue) {
        $filteredIndexes[] = $index;
    }
}
print_r($filteredIndexes);

Метод 2: использование функции array_filter()

$array = [1, 2, 3, 4, 5];
$searchValue = 3;
$filteredIndexes = array_keys(
    array_filter($array, function ($value) use ($searchValue) {
        return $value === $searchValue;
    })
);
print_r($filteredIndexes);

Метод 3. Использование функций array_keys() и array_intersect()

$array = [1, 2, 3, 4, 5];
$searchValue = 3;
$filteredIndexes = array_keys(
    array_intersect($array, [$searchValue])
);
print_r($filteredIndexes);