只需要解释一下



在下面的代码中,如果没有== 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、空数组、空字符串和没有变量的对象。

相关内容

最新更新