filter_input_array

funkcja

Pobiera i filtruje wiele wartości z superglobalnej tablicy (GET, POST, COOKIE…) według specyfikacji filtrów.

filter_input_array(int $type, array|int $options = FILTER_DEFAULT, bool $add_empty = true): array|false|null

filter_input_array działa jak filter_var_array, ale źródłem danych jest superglobalna tablica PHP: INPUT_GET, INPUT_POST, INPUT_COOKIE, INPUT_SERVER lub INPUT_ENV. Zwraca tablicę przefiltrowanych wartości, false gdy rozszerzenie filter nie jest dostępne, lub null gdy źródłowa tablica (np. $_GET) nie jest dostępna lub nie została wypełniona. Parametr $add_empty kontroluje czy pola ze specyfikacji, których brak w żądaniu, mają być dodawane z wartością null.

<?php
declare(strict_types=1);

// Przykład: formularz POST z polami 'email' i 'wiek'
// $_POST = ['email' => '[email protected]', 'wiek' => '30']

$spec = [
    'email' => FILTER_VALIDATE_EMAIL,
    'wiek'  => [
        'filter'  => FILTER_VALIDATE_INT,
        'options' => ['min_range' => 1, 'max_range' => 120],
    ],
];

$dane = filter_input_array(INPUT_POST, $spec);

if ($dane !== false && $dane !== null) {
    if ($dane['email'] !== false && $dane['wiek'] !== false) {
        echo 'Dane poprawne';
    } else {
        echo 'Błędne dane';
    }
}
📘 Naucz się w lekcji →