Funkcja empty() w PHP
empty() w PHP służy do sprawdzania, czy zmienna jest uznawana za pustą. Zwraca wartość logiczną: true albo false.
W praktyce empty() jest często używana w formularzach, np. do sprawdzania, czy użytkownik wypełnił pole.
Kiedy empty() zwraca true?
Funkcja empty($a) zwróci true, gdy zmienna:
- nie istnieje,
- ma wartość
0, - ma wartość
0.0, - ma wartość
"0", - ma wartość pustego tekstu
"", - ma wartość
null, - ma wartość
false, - jest pustą tablicą
[].
Dlatego dla kodu:
$a = 0;
var_dump(empty($a));
wynik będzie:
bool(true)
Ważne na egzaminie
W pytaniu egzaminacyjnym wartość liczbowa 0 jest traktowana przez empty() jako wartość pusta. Poprawna odpowiedź to więc TRUE.
Różnica między empty() a isset()
isset($a) sprawdza, czy zmienna istnieje i nie ma wartości null. Natomiast empty($a) sprawdza, czy zmienna jest pusta w szerszym znaczeniu.
Przykład:
$a = 0;
var_dump(isset($a)); // true
var_dump(empty($a)); // true
Zmienna istnieje, więc isset() zwraca true, ale jej wartość to 0, więc empty() również zwraca true.