2014-11-25 96 views
2

我檢查3個變量都等於零內if條件,目前我做這樣的最好的辦法等於如果條件內出現零 - PHP

if($diff_colour_code==0 && $diff_upholstery_code==0 && $big_diff==0) 

一些事情有沒有更好的辦法做到這一點

我在超前的思維方式像

if($diff_colour_code==$diff_upholstery_code==$big_diff==0) 

請幫幫忙,謝謝。

+1

如果你的變量只包含整數,你可以將它們加在一起並檢查結果是0 – twain 2014-11-25 08:08:59

+0

不,變量可以取負值:) – 2014-11-25 08:09:53

回答

0

這應該適合你:

你可以給函數儘可能多的參數,你需要!

<?php 

    $diff_colour_code = 0; 
    $big_diff = 0; 
    $diff_upholstery_code = 0; 

    function zeroCheck() { 
     foreach(func_get_args() as $arg) 
      if($arg == 0) 
       continue; 
      else 
       return false; 
     return true; 
    } 


    if (zeroCheck($diff_colour_code, $big_diff, $diff_upholstery_code)) 
     echo "all are 0!"; 


?> 
0

你可以使用!爲:

if(!$diff_colour_code && !$diff_upholstery_code && !$big_diff) 
+0

值應該特別是0,我認爲''和false會通過這個語句 – 2014-11-25 07:59:46

0

你可以做這樣的事情:

$var1 = 0; 
    $var2 = 0; 
    $var3 = 0; 

    $array = compact("var1", "var2", "var3"); 
    $countValues = array_count_values($array); 
    if($countValues[0] == count($array)){ 
     echo "yes"; 
    }else{ 
     echo "no"; 
    } 

或本

if(($var1 == 0 && $var1 == $var2 && $var2 == $var3)){ 
     echo "yes"; 
    }else{ 
     echo "no"; 
    }