filter_has_var
funkcja
Sprawdza czy zmienna istnieje w superglobalnej tablicy wejściowej (GET, POST, COOKIE, SERVER, ENV).
filter_has_var(int $type, string $var_name): bool
filter_has_var sprawdza obecność zmiennej w superglobalnej tablicy wejściowej bez pobierania jej wartości. Typ źródła określa stała: INPUT_GET, INPUT_POST, INPUT_COOKIE, INPUT_SERVER lub INPUT_ENV. W przeciwieństwie do isset($_POST['klucz']) — która czyta już przetworzoną superglobalną — funkcja sięga do oryginalnych danych wejściowych żądania.
<?php
declare(strict_types=1);
// Sprawdzenie czy formularz zawiera pole 'submit'
if (filter_has_var(INPUT_POST, 'submit')) {
echo 'Formularz został wysłany';
}
// Sprawdzenie parametru GET
if (filter_has_var(INPUT_GET, 'strona')) {
$strona = filter_input(INPUT_GET, 'strona', FILTER_VALIDATE_INT);
echo 'Strona: ' . ($strona ?: 1);
}
// Sprawdzenie ciasteczka sesji
if (filter_has_var(INPUT_COOKIE, 'PHPSESSID')) {
echo 'Sesja aktywna';
}