null、 is_null() 、empty() 、isset() PHP 判断变量是否为空
PHP中,在判断变量是否为空的时候,总会纠结应该选用哪个函数,下面列取常用的多种情况,其中1/3经过我的验证,其它来自网络,验证后使用。。。
表达式 | gettype() | empty() | is_null() | isset() | if($x) Boolean | is_null |
---|---|---|---|---|---|---|
$x = ""; | string | TRUE | FALSE | TRUE | FALSE | false |
$x = null; | NULL | TRUE | TRUE | FALSE | FALSE | true |
var $x; | NULL | TRUE | TRUE | FALSE | FALSE | true |
$x is undefined | NULL | TRUE | TRUE | FALSE | FALSE | true |
$x = array(); | array | TRUE | FALSE | TRUE | FALSE | false |
$x = false; | boolean | TRUE | FALSE | TRUE | FALSE | false |
$x = true; | boolean | FALSE | FALSE | TRUE | TRUE | false |
$x = 1; | integer | FALSE | FALSE | TRUE | TRUE | false |
$x = 42; | integer | FALSE | FALSE | TRUE | TRUE | false |
$x = 0; | integer | TRUE | FALSE | TRUE | FALSE | false |
$x = -1; | integer | FALSE | FALSE | TRUE | TRUE | false |
$x = "1"; | string | FALSE | FALSE | TRUE | TRUE | false |
$x = "0"; | string | TRUE | FALSE | TRUE | FALSE | false |
$x = "-1"; | string | FALSE | FALSE | TRUE | TRUE | false |
$x = "php"; | string | FALSE | FALSE | TRUE | TRUE | false |
$x = "true"; | string | FALSE | FALSE | TRUE | TRUE | false |
$x = "false"; | string | FALSE | FALSE | TRUE | TRUE | false |