Funkcja empty() w PHP

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

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.