PHP: gettype()、empty()、is_null()、isset()、bool : if($x) 的區別

2022031412:19
 
Comparisons of $x with PHP functions
Expression gettype() empty() bool: if($x)
(跟 empty() 相反)
is_null() isset()
(跟 is_null 相反)
$x = ""; string true false false true
$x = null; NULL true false true false
var $x; NULL true false true false
$x is undefined NULL true false true false
$x = []; array true false false true
$x = ['a', 'b']; array false true false true
$x = false; bool true false false true
$x = true; bool false true false true
$x = 1; int false true false true
$x = 42; int false true false true
$x = 0; int true false false true
$x = -1; int false true false true
$x = "1"; string false true false true
$x = "0"; string true false false true
$x = "-1"; string false true false true
$x = "php"; string false true false true
$x = "true"; string false true false true
$x = "false"; string false true false true

參考
PHP: PHP type comparison tables - Manual