在PHP中两个变量间比较相等可以使用两个等号或者三个等号,这两种方式有什么区别呢?
用两个等号时,只要比较的两个变量的值相同,输出true,否则输出false。
用三个等号时,除了两个变量的值相同外,还必须这两个变量的类型相同,才能输出true,否则输出false。
例如:
$v1 = "1";
$v2 = 1;
if ($v1==$v2){
echo ("true<br/>");
} else{
echo("false<br />");
};
if ($v1===$v2){
echo ("true<br/>");
} else{
echo("false<br />");
};
程序执行结果如下:
true
false
程序解读:
在遇到第一个if语句(两个等号)时,PHP会把$v1从字符串类型转换成数值型,然后与$v2比较,两值相同,返回true,因此,执行语句:echo("true<br />");。
在遇到第二个if语句(三个等号)时,虽然通过类型转换后两值相同,但是由于$v1的值和$v2的值的类型不同,前者是字符串,后者是整数,所以返回false,因此,执行语句:echo("false<br />");。
PHP三个等号与两个等号的区别
最新推荐文章于 2022-11-05 17:54:53 发布