array_all
funkcja
Zwraca true, jeśli wszystkie elementy tablicy spełniają warunek callbacku. Zwraca true dla pustej tablicy.
array_all(array $array, callable $callback): bool
array_all (PHP 8.4+) sprawdza, czy każdy element $array spełnia warunek podany w $callback. Zwraca false natychmiast po napotkaniu pierwszego elementu, który nie spełnia warunku (leniwa ewaluacja). Dla pustej tablicy zawsze zwraca true (pusta prawda logiczna — ang. vacuous truth).
To nowoczesny odpowiednik wzorca foreach z return false w środku. Razem z array_any tworzy parę kwantyfikatorów logicznych: array_all to kwantyfikator uniwersalny (∀), array_any to egzystencjalny (∃). Callback otrzymuje klucz jako drugi argument, co pozwala uwzględniać klucze w sprawdzeniu: fn($value, $key) => ....
<?php
declare(strict_types=1);
$parzyste = [2, 4, 6, 8];
var_dump(array_all($parzyste, fn($n) => $n % 2 === 0));
// wynik:
// bool(true)
$mieszane = [2, 4, 5, 8];
var_dump(array_all($mieszane, fn($n) => $n % 2 === 0));
// wynik:
// bool(false)
// Pusta tablica zawsze zwraca true:
var_dump(array_all([], fn($n) => $n > 0));
// wynik:
// bool(true)
// Walidacja — czy wszystkie ceny są dodatnie:
$ceny = [10.0, 24.99, 5.50];
$wszystkieDodatnie = array_all($ceny, fn($c) => $c > 0);
var_dump($wszystkieDodatnie);
// wynik:
// bool(true)