<?php
$a="dqwfeqwf";
if($a==0){
echo 'yes';
}else{
echo 'no';
}
?>
为什么输出是Yes?
$a="dqwfeqwf";
if($a==0){
echo 'yes';
}else{
echo 'no';
}
?>
为什么输出是Yes?
这是因为你的是一个数字和一个字符串进行比较,PHP会把字符串转换成数字再进行比较。 PHP转换的规则的是:若字符串以数字开头,则取开头数字作为转换结果,若无则输出0。 例如:123abc转换后应该是123,而abc则为0,0==0这当然是成立的啦! 具体可以参考官方手册:如果比较一个整数和字符串,则字符串会被转换为整数。 PS: @gaosboy 讲的'00'=='000'则是两个字符串的比较,官方手册也有解释。