php检查两个变量,如果它们彼此相等且都等于0

php检查两个变量,如果它们彼此相等且都等于0,php,if-statement,equals,Php,If Statement,Equals,正如图块所示,我有两个变量,它们必须彼此相等,并且都等于0 我尝试了几件事,但都没有成功: if (($getstatuschk === $getstatuspost) && ($getstatuschk === "0") && ($getstatuspost === "0")){ echo "status is ok";} else {echo "not ok!"} if (($getstatuschk === $getstatuspo

正如图块所示,我有两个变量,它们必须彼此相等,并且都等于0

我尝试了几件事,但都没有成功:

    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!"}
我希望你能帮我做这件事


谢谢

问题在于,您在数字周围使用引号。如果您使用===则您要比较的内容必须是相同类型的。大概是

if (($getstatuschk === $getstatuspost) && ($getstatuschk === 0) && ($getstatuspost === 0)){ echo "status is ok";}
else {echo "not ok!"}

可能更好。

问题是您在数字周围使用引号。如果您使用===则您要比较的内容必须是相同类型的。大概是

if (($getstatuschk === $getstatuspost) && ($getstatuschk === 0) && ($getstatuspost === 0)){ echo "status is ok";}
else {echo "not ok!"}
可能更好。

代码应该是

if (($getstatuschk == $getstatuspost) && ($getstatuspost == 0)){ 
   echo "status is ok";
}
else {echo "not ok!"}
您不需要检查这两个变量是否都等于零,因为您已经比较了它们,也不需要在引号中加零,因为这会使它成为一个字符串

if (($getstatuschk == $getstatuspost) && ($getstatuspost == 0)){ 
   echo "status is ok";
}
else {echo "not ok!"}

您不需要检查两个变量是否都等于零,因为您已经对它们进行了比较,也不需要在引号中加零,因为这会使它成为一个字符串

如果它们必须彼此相等且都等于零,则应用基本布尔代数:

if ($getstatuschk === 0 and $getstatuspost === 0){ echo "status is ok";}
else {echo "not ok!"}

请记住,三重相等(==)还检查数据类型而不仅仅是值,如果已知两个变量为整数,则使用==,如果不知道其类型,则使用==然后使用(==0)将其转换为整数,请注意,空字符串在与整数进行比较时也被强制转换为0。

如果它们必须彼此相等且都等于零,则应用基本布尔代数:

if ($getstatuschk === 0 and $getstatuspost === 0){ echo "status is ok";}
else {echo "not ok!"}

请记住,三重相等(==)也会检查数据类型而不仅仅是值,如果已知两个变量为整数,则使用===,如果不知道其类型,则使用==然后使用(==0)将其转换为整数,提醒在与整数进行比较时,空字符串也会转换为0。

是否处理字符串或数字
==“0”
对于Strings是真的为什么不检查($getstatuschk==“0”&&$getstatuspost==“0”){}如果是真的,这意味着两个变量都有相同的值..嗯,我在创建此代码时很匆忙,现在我意识到我正在比较两个mysql查询的值。。。解决了这个问题后,一切正常!谢谢你的回答!你是在处理字符串还是数字
==“0”
对于Strings是真的为什么不检查($getstatuschk==“0”&&$getstatuspost==“0”){}如果是真的,这意味着两个变量都有相同的值..嗯,我在创建此代码时很匆忙,现在我意识到我正在比较两个mysql查询的值。。。解决了这个问题后,一切正常!谢谢你的回答!