array_any
funkcja
Zwraca true, jeśli choć jeden element tablicy spełnia warunek callbacku. Zwraca false dla pustej tablicy.
array_any(array $array, callable $callback): bool
array_any (PHP 8.4+) sprawdza, czy przynajmniej jeden element $array spełnia warunek podany w $callback. Zwraca true natychmiast po znalezieniu pierwszego pasującego elementu (leniwa ewaluacja). Dla pustej tablicy zawsze zwraca false.
To nowoczesny odpowiednik wzorca foreach z return true w środku. Razem z array_all tworzy parę kwantyfikatorów logicznych: egzystencjalnego (array_any) i uniwersalnego (array_all). Jeśli potrzebujesz samej wartości pasującego elementu, użyj array_find. Callback otrzymuje klucz jako drugi argument, co pozwala uwzględniać klucze w sprawdzeniu: fn($value, $key) => ....
<?php
declare(strict_types=1);
$liczby = [1, 2, 3, 4, 5];
var_dump(array_any($liczby, fn($n) => $n > 2));
// wynik:
// bool(true)
var_dump(array_any($liczby, fn($n) => $n > 10));
// wynik:
// bool(false)
// Pusta tablica zawsze zwraca false:
var_dump(array_any([], fn($n) => $n > 0));
// wynik:
// bool(false)
// Sprawdzenie czy jakikolwiek użytkownik jest adminem:
$uzytkownicy = [
['imie' => 'Ola', 'rola' => 'user'],
['imie' => 'Kuba', 'rola' => 'admin'],
];
$maAdmin = array_any($uzytkownicy, fn($u) => $u['rola'] === 'admin');
var_dump($maAdmin);
// wynik:
// bool(true)