我有$first和$second.他们可以有价值0或1.
if ( $first AND $second ) {
// True
} else {
// False
}
Run Code Online (Sandbox Code Playgroud)
我的心(和谷歌搜索)告诉我,这个结果是真实的,只有当$first == 1和$second == 0,反之亦然.但是当这两个变量都是时,结果都是正确的1.
我不明白它是如何工作的.
您的Google搜索失败了.PHP的类型杂耍意味着a 1等同于TRUE和0等同于FALSE.(另见类型比较).因此,如果两个值都是1if语句的计算结果TRUE.如果其中一个或两个值为0,则计算结果为FALSE.
<?php
$one = 1;
$zero = 0;
if ($one && $one) {
echo "true\n";
}
else {
echo "false\n";
}
if ($zero && $zero) {
echo "true\n";
}
else {
echo "false\n";
}
if ($one && $zero) {
echo "true\n";
}
else {
echo "false\n";
}
if ($zero && $one) {
echo "true\n";
}
else {
echo "false\n";
}
Run Code Online (Sandbox Code Playgroud)
节目输出
true
false
false
false
Run Code Online (Sandbox Code Playgroud)