我有:
<? if ($foo != 11 || 10) {echo 'Some html code there';} ?>
当我运行它时,if语句返回yes,不管foo的值是什么。当我删除"|| 10"时,它工作得很好。问题出在哪里?
您的问题出在|| 10
部分。
就跟你说
一样if(10)
, 10为true
ish。试试这个
if ($foo != 11 || $foo != 10)
无论你给出什么作为输入,你的代码都将被执行,因为,假设给定一个数字11,对于第一个条件它将为假,即11 != 11但是,当你使用11 != 10时,这将计算为真,因此你将得到if块的结果为真。
为了完美的锻炼,首先使用负值,就像如果值不是这些值会发生什么一样。或者使用&&操作符。