The PHP Documentation Group has now added the Appendix K. PHP type comparison tables to the official PHP manual. Empty() & Co, Special ValuesNote: empty() and isSet() don't give a warning when the variable has not been defined before. |
|
gettype() |
is_null() |
isSet() |
(bool) |
$x = ""; |
string |
false |
true |
false |
$x = null; |
NULL |
true |
false |
false |
var $x; (not set) |
NULL |
true |
false |
false |
$x = array(); |
array |
false |
true |
false |
$x = false; |
boolean |
false |
true |
false |
$x = 15; |
integer |
false |
true |
true |
$x = 1; |
integer |
false |
true |
true |
$x = 0; |
integer |
false |
true |
false |
$x = -1; |
integer |
false |
true |
true |
$x = "15"; |
string |
false |
true |
true |
$x = "1"; |
string |
false |
true |
true |
$x = "0"; |
string |
false |
true |
false |
$x = "-1"; |
string |
false |
true |
true |
$x = "foo"; |
string |
false |
true |
true |
$x = "true"; |
string |
false |
true |
true |
$x = "false"; |
string |
false |
true |
true |
comparison with ==
|
true |
false |
1 |
0 |
-1 |
"1" |
"0" |
"-1" |
"1.3" |
"1.30" |
1.3 |
1.30 |
array() |
"foo" |
"" |
true |
true |
false |
true |
false |
true |
true |
false |
true |
true |
true |
true |
true |
false |
true |
false |
false |
false |
true |
false |
true |
false |
false |
true |
false |
false |
false |
false |
false |
true |
false |
true |
1 |
true |
false |
true |
false |
false |
true |
false |
false |
false |
false |
false |
false |
false |
false |
false |
0 |
false |
true |
false |
true |
false |
false |
true |
false |
false |
false |
false |
false |
false |
true |
true |
-1 |
true |
false |
false |
false |
true |
false |
false |
true |
false |
false |
false |
false |
false |
false |
false |
"1" |
true |
false |
true |
false |
false |
true |
false |
false |
false |
false |
false |
false |
false |
false |
false |
"0" |
false |
true |
false |
true |
false |
false |
true |
false |
false |
false |
false |
false |
false |
false |
false |
"-1" |
true |
false |
false |
false |
true |
false |
false |
true |
false |
false |
false |
false |
false |
false |
false |
"1.3" |
true |
false |
false |
false |
false |
false |
false |
false |
true |
true |
true |
true |
false |
false |
false |
"1.30" |
true |
false |
false |
false |
false |
false |
false |
false |
true |
true |
true |
true |
false |
false |
false |
1.3 |
true |
false |
false |
false |
false |
false |
false |
false |
true |
true |
true |
true |
false |
false |
false |
1.30 |
true |
false |
false |
false |
false |
false |
false |
false |
true |
true |
true |
true |
false |
false |
false |
array() |
false |
true |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
true |
false |
false |
"foo" |
true |
false |
false |
true |
false |
false |
false |
false |
false |
false |
false |
false |
false |
true |
false |
"" |
false |
true |
false |
true |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
true |
comparison with ===
|
true |
false |
1 |
0 |
-1 |
"1" |
"0" |
"-1" |
"1.3" |
"1.30" |
1.3 |
1.30 |
array() |
"foo" |
"" |
true |
true |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
true |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
1 |
false |
false |
true |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
0 |
false |
false |
false |
true |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
-1 |
false |
false |
false |
false |
true |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
"1" |
false |
false |
false |
false |
false |
true |
false |
false |
false |
false |
false |
false |
false |
false |
false |
"0" |
false |
false |
false |
false |
false |
false |
true |
false |
false |
false |
false |
false |
false |
false |
false |
"-1" |
false |
false |
false |
false |
false |
false |
false |
true |
false |
false |
false |
false |
false |
false |
false |
"1.3" |
false |
false |
false |
false |
false |
false |
false |
false |
true |
false |
false |
false |
false |
false |
false |
"1.30" |
false |
false |
false |
false |
false |
false |
false |
false |
false |
true |
false |
false |
false |
false |
false |
1.3 |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
true |
true |
false |
false |
false |
1.30 |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
true |
true |
false |
false |
false |
array() |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
true |
false |
false |
"foo" |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
true |
false |
"" |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
false |
true |