我尝试了一些但没有奏效的事情:
if (($getstatuschk === $getstatuspost) && ($getstatuschk === "0") && ($getstatuspost === "0")){ echo "status is ok";}
else {echo "not ok!"}
if (($getstatuschk === $getstatuspost) and ($getstatuschk === "0") and ($getstatuspost === "0")){ echo "status is ok";}
else {echo "not ok!"}
我希望你能帮助我... ...
谢谢!
答案 0 :(得分:6)
代码应
if (($getstatuschk == $getstatuspost) && ($getstatuspost == 0)){
echo "status is ok";
}
else {echo "not ok!"}
你不需要检查两个变量是否都等于零,因为你已经比较了它们并且没有在引号中加零,因为这使它成为一个字符串
答案 1 :(得分:1)
问题是您在数字周围使用引号。如果您使用===,则您要比较的内容必须属于同一类型。像
这样的东西if (($getstatuschk === $getstatuspost) && ($getstatuschk === 0) && ($getstatuspost === 0)){ echo "status is ok";}
else {echo "not ok!"}
可能会更好。
答案 2 :(得分:1)
如果它们必须彼此相等且都等于零,那么应用基本的布尔代数:
if ($getstatuschk === 0 and $getstatuspost === 0){ echo "status is ok";}
else {echo "not ok!"}
请记住,三等号(===)也检查数据类型而不仅仅是值,如果已知两个变量是整数使用===,如果你不知道它的类型只是使用==和然后使用(== 0)将其强制转换为整数,提醒在与整数比较时,空字符串也会被转换为0。