1

変数$cat_IDの値が19または26に等しくないかどうかをチェックする条件付きifステートメントを実行しようとしています。その場合、 $priceToShow変数をエコーする必要があります。

PHP

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

3 に答える 3

14

19でも26でもない場合は、andステートメントを使用します。

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;
}

)。

于 2013-03-12T12:49:20.487 に答える
7

これは常にtrueを返します

AND接続詞を使用する必要があります

2つ以上の値の場合は!in_array()

編集:絶対に正しい@Waygood

if ( ! ( $v == 19 || $v == 26 ) ) {
  // do your thing
}
于 2013-03-12T12:50:28.923 に答える
0

を使用する方が良い場合があります!in_array()。これにより、必要なときに/必要に応じて追加および削除するのがより迅速かつ簡単になります

if (!in_array($cat_id, array('19', '26')))
{
  echo $priceToShow;
}
于 2013-03-12T12:50:12.517 に答える