我正在尝试执行条件if语句,检查变量 $ cat_ID 的值是否不等于 19 或 26 然后它应该回显我的 $ priceToShow 变量。
PHP
if(($cat_id != '19') || ($cat_id !='26')){
echo $priceToShow;
}
答案 0 :(得分:12)
如果它既不是19也不是26,请使用和声明:
if(($cat_ID != '19') && ($cat_id !='26')){
echo $priceToShow;
}
如果要检查的值很多,请使用in_array
:
$bad_values = array(19, 26, 54);
if (!in_array($cat_ID, $bad_values)) {
echo $priceToShow;
}
(在这种情况下,严格的比较是关闭的;您应该始终将数据转换为预期的类型,然后使用严格的比较:
$bad_values = array(19, 26, 54);
if (!in_array(intval($cat_ID), $bad_values, true)) {
echo $priceToShow;
}
)
答案 1 :(得分:6)
这将始终返回true
您需要使用AND连接
超过2个值使用! in_array()
编辑:绝对正确@Waygood
if ( ! ( $v == 19 || $v == 26 ) ) {
// do your thing
}
答案 2 :(得分:0)
使用!in_array()
可能更好。这样可以更快更简单地在需要时添加和删除
if (!in_array($cat_id, array('19', '26')))
{
echo $priceToShow;
}