Php/docs/types.comparisons
来自菜鸟教程
PHP 类型比较表
以下的表格显示了 PHP 类型 和 比较运算符 在松散和严格比较时的作用。该补充材料还和 类型戏法 的相关章节内容有关。同时,大量的用户注释和 » BlueShoes 的工作也给该材料提供了帮助。
在使用这些表格之前,需要明白变量类型及它们的意义。例如,"42" 是一个字符串而
42 是一个整数。false 是一个布尔值而 "false"
是一个字符串。
Note:
HTML 表单并不传递整数、浮点数或者布尔值,它们只传递字符串。要想检测一个字符串是不是数字,可以使用 is_numeric() 函数。
Note:
在没有定义变量
$x的时候,诸如if ($x)的用法会导致一个E_NOTICE级别的错误。所以,可以考虑用 empty() 或者 isset() 函数来初始化变量。
Note:
Some numeric operations can result in a value represented by the constant
NAN. Any loose or strict comparisons of this value against any other value, including itself, but excepttrue, will have a result offalse. (i.e.NAN != NANandNAN !== NAN) Examples of operations that produceNANincludesqrt(-1),asin(2), andacosh(0).
| 表达式 | gettype() | empty() | is_null() | isset() | boolean : if($x)
|
|---|---|---|---|---|---|
$x = "";
|
string | true
|
false
|
true
|
false
|
$x = null;
|
NULL | true
|
true
|
false
|
false
|
var $x;
|
NULL | true
|
true
|
false
|
false
|
$x is undefined
|
NULL | true
|
true
|
false
|
false
|
$x = array();
|
array | true
|
false
|
true
|
false
|
$x = array('a', 'b');
|
array | false
|
false
|
true
|
true
|
$x = false;
|
boolean | true
|
false
|
true
|
false
|
$x = true;
|
boolean | false
|
false
|
true
|
true
|
$x = 1;
|
integer | false
|
false
|
true
|
true
|
$x = 42;
|
integer | false
|
false
|
true
|
true
|
$x = 0;
|
integer | true
|
false
|
true
|
false
|
$x = -1;
|
integer | false
|
false
|
true
|
true
|
$x = "1";
|
string | false
|
false
|
true
|
true
|
$x = "0";
|
string | true
|
false
|
true
|
false
|
$x = "-1";
|
string | false
|
false
|
true
|
true
|
$x = "php";
|
string | false
|
false
|
true
|
true
|
$x = "true";
|
string | false
|
false
|
true
|
true
|
$x = "false";
|
string | false
|
false
|
true
|
true
|
true
|
false
|
1
|
0
|
-1
|
"1"
|
"0"
|
"-1"
|
null
|
array()
|
"php"
|
""
| |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
true
|
true
|
false
|
true
|
false
|
true
|
true
|
false
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
true
|
false
|
true
|
false
|
false
|
true
|
false
|
true
|
true
|
false
|
true
|
1
|
true
|
false
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
0
|
false
|
true
|
false
|
true
|
false
|
false
|
true
|
false
|
true
|
false
|
true
|
true
|
-1
|
true
|
false
|
false
|
false
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
"1"
|
true
|
false
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
"0"
|
false
|
true
|
false
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
"-1"
|
true
|
false
|
false
|
false
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
null
|
false
|
true
|
false
|
true
|
false
|
false
|
false
|
false
|
true
|
true
|
false
|
true
|
array()
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
true
|
false
|
false
|
"php"
|
true
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
""
|
false
|
true
|
false
|
true
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
true
|
true
|
false
|
1
|
0
|
-1
|
"1"
|
"0"
|
"-1"
|
null
|
array()
|
"php"
|
""
| |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
true
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
1
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
0
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
-1
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
"1"
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
false
|
"0"
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
false
|
"-1"
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
false
|
null
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
false
|
array()
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
false
|
"php"
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|
false
|
""
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
false
|
true
|