当使用带有OR的IF语句时,无论什么是foo

时间:2015-09-27 19:29:04

标签: php if-statement

我有:

<? if ($foo != 11 || 10) {echo 'Some html code there';} ?>

当我运行它时,if语句返回yes,无论foo是什么值。 当我删除“|| 10”时,它运行良好。哪里可能有问题?

2 个答案:

答案 0 :(得分:1)

您的问题出在|| 10部分。

就像你说的那样

if(10)

10是true ish。试试这个

if ($foo != 11 || $foo != 10)

答案 1 :(得分:0)

你的代码总是会被执行,无论你输入什么,因为,假设11给出一个数字,对于第一个条件它将是假的,即 11!= 11 但是,当你使用 11!= 10 时,这将评估为true,因此你会得到if为true的结果为true。
为了完美锻炼,首先使用负值,如果值不是那些值会发生什么。或使用&amp;&amp;运营商。
希望这应该有所帮助。