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)
📘 Naucz się w lekcji →