Co zwróci w PHP empty($a), gdy $a ma wartość 0?
Źle.
empty() zawsze zwraca true/false.Źle.
0 jest traktowane jako „puste”.Źle.
empty() zwraca wartość logiczną, nie liczbę.Dobrze.
0 jest uznawane za puste, więc TRUE.Funkcja
empty() sprawdza, czy zmienna jest „pusta”, a w PHP za pustą uznaje się m.in. wartość 0, pusty napis, null i false. Skoro $a wynosi 0, empty($a) zwróci TRUE. Dlatego wynikiem jest TRUE.empty() zwraca wartość logiczną, a nie 0 czy NULL, więc te odpowiedzi odpadają. Nie zwróci też FALSE, bo 0 jest w PHP traktowane jako wartość pusta. Dla $a równego 0 funkcja empty($a) zwraca TRUE.