Difference between PHP isset() vs empty() vs is_null()

isset() - Determine if a variable is set and is not NULL
empty() - Determine whether a variable is empty
is_null() - Finds whether a variable is NULL

PHP has different functions which can be used to test the value of a variable. Three useful functions for this are isset(), empty() and is_null(). All these function return a boolean value. If these functions are not used in correct way they can cause unexpected results.


Value of variable ($var)
isset($var)
empty($var)
is_null($var)
“” (an empty string)
bool(true)
bool(true)
” ” (space)
bool(true)
FALSE
bool(true)
bool(true)
TRUE
bool(true)
array() (an empty array)
bool(true)
bool(true)
NULL
bool(true)
bool(true)
“0″ (0 as a string)
bool(true)
bool(true)
0 (0 as an integer)
bool(true)
bool(true)
0.0 (0 as a float)
bool(true)
bool(true)
var $var; (a variable declared, but without a value)
bool(true)
bool(true)
NULL byte (“\ 0″)
bool(true)

Comments