我有这个代码:
$r = do_something($data);
if ($r == 1)
{
echo "it is 1";
}
switch ($r)
{
case "a":
print "a";
break;
case "b":
print "b";
break;
default:
print "default";
}
使用此代码,输出应为:
it is 1
default
但令人惊讶的是输出是:
it is 1
a
这怎么可能?
编辑:经过一些测试,我看到:
$r === true.
所以新的问题是:当 var 为真时,开关如何工作?