在下面的代码中,如果没有== 0
,结果将显示错误的答案(a是奇数(。并且对于CCD_ 2,结果显示了正确的答案。我需要知道原因。
<?php
$A = 78;
if ($A % 2 == 0) {
echo "A is a even number";
} else {
echo "A is an odd number";
}
;
无"==0"即
if($A % 2)
评估为0变为
if(0)
如果这是false,则相应的else被执行会给你"A是奇数"。
数字0在PHP中被评估为false。在这种情况下,$A%0为0。
在此背景下:
if ($A%0) //this is false, because it is 0 and 0 is evaluated as false
另一方面,A%2==0与(0==0(相同,这是一个true语句。
其他被评估为false的东西包括但不限于:null、空数组、空字符串和没有变量的对象。