此if语句触发,无论条件中的值如何,为了便于解释,我将替换数字。无论条件是否为真,为什么条件会触发执行。我已尝试过每个场景,但每次都会触发语句中的执行。
if(1 != 1 && 1 != 2 ){
execute code
exit();
}
这是确切的代码:
if($name1 != $winner && $name2 != $winner ){
echo " The player you chose as winner is not associated with match id: $match_id ";
exit();
}
答案 0 :(得分:1)
帖子中提到的条件无法返回true
。
但是,如果你编写类似下面的代码,你所说的可能会发生:
if(1 != 1 && 1 != 2 );{
echo 'case 1';
}
注意if()之后的;
。你确定你的代码在if()之后没有分号吗?如果您错误地放置了;
,那么if语句将被评估为单行语句,并且if-block中的代码被解释器视为if条件的外部。 / p>
根据更新后的问题进行修改
请检查以下内容:
$winner
已正确设置为$name1
或$name2
。$winner
的变量声明范围是否正确 - 自从我完成PHP以来已经有一段时间了,但这可能还有其他需要注意的地方。除了这些之外,我没有看到任何其他原因导致此代码的行为与您所声明的方式相同。
答案 1 :(得分:0)