PHP如果不等于或不等于

时间:2013-03-12 12:47:22

标签: php if-statement

我正在尝试执行条件if语句,检查变量 $ cat_ID 的值是否不等于 19 26 然后它应该回显我的 $ priceToShow 变量。

PHP

if(($cat_id != '19') || ($cat_id !='26')){ 
    echo $priceToShow;
}

3 个答案:

答案 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;
}
相关问题