【编程词典】PHP 类型比较

PHP 类型比较

虽然 PHP 是弱类型语言,但也需要明白变量类型及它们的意义,因为我们经常需要对 PHP 变量进行比较,包含松散和严格比较。

  • 松散比较:使用两个等号 == 比较,只比较值,不比较类型。
  • 严格比较:用三个等号 === 比较,除了比较值,也比较类型。

例如,"42" 是一个字符串而 42 是一个整数。FALSE 是一个布尔值而 "false" 是一个字符串。

实例

<?php

if
(
42
==
"
42
"
)

{

echo

'
1、值相等
'
;
}

echo

PHP_EOL
;
//
换行符


if
(
42
===
"
42
"
)

{

echo

'
2、类型相等
'
;
}

else

{

echo

'
3、不相等
'
;
}

?>

以上实例输出结果为:

1、值相等
3、不相等

PHP中 比较 0、false、null

测试代码:

实例

<?php

echo

'
0 == false:
'
;
var_dump
(
0
==
false
)
;
echo

'
0 === false:
'
;
var_dump
(
0
===
false
)
;
echo

PHP_EOL
;
echo

'
0 == null:
'
;
var_dump
(
0
==
null
)
;
echo

'
0 === null:
'
;
var_dump
(
0
===
null
)
;
echo

PHP_EOL
;
echo

'
false == null:
'
;
var_dump
(
false
==
null
)
;
echo

'
false === null:
'
;
var_dump
(
false
===
null
)
;
echo

PHP_EOL
;
echo

'
"0" == false:
'
;
var_dump
(
"
0
"
==
false
)
;
echo

'
"0" === false:
'
;
var_dump
(
"
0
"
===
false
)
;
echo

PHP_EOL
;
echo

'
"0" == null:
'
;
var_dump
(
"
0
"
==
null
)
;
echo

'
"0" === null:
'
;
var_dump
(
"
0
"
===
null
)
;
echo

PHP_EOL
;
echo

'
"" == false:
'
;
var_dump
(
"
"
==
false
)
;
echo

'
"" === false:
'
;
var_dump
(
"
"
===
false
)
;
echo

PHP_EOL
;
echo

'
"" == null:
'
;
var_dump
(
"
"
==
null
)
;
echo

'
"" === null:
'
;
var_dump
(
"
"
===
null
)
;

以上实例输出结果为:

0 == false: bool(true)
0 === false: bool(false)

0 == null: bool(true)
0 === null: bool(false)

false == null: bool(true)
false === null: bool(false)

"0" == false: bool(true)
"0" === false: bool(false)

"0" == null: bool(false)
"0" === null: bool(false)

"" == false: bool(true)
"" === false: bool(false)

"" == null: bool(true)
"" === null: bool(false)

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注