2012-04-06 56 views
0

如果我有一个数组:
PHP - 使用运算符来比较数组值

$array = array ([rock] => 40, [pop] => 30, [rap] => 20) etc... 

我怎么可以这样做:

foreach key in $array 
{ 
if (array_value > 30) echo "> 30:" . $array_key . "<br>"; 
if (array_value < 30) echo "< 30:" . $array_key . "<br>"; 
} 

这样的结果将是:

> 30:rock<br> 
< 30:pop<br> 
< 30:rap<br> 

谢谢!我希望这是有道理...

回答

2
foreach ($array as $key => $value) { 
    if  ($value ...) echo $key... 
    else if ($value ...) echo $key... 
    ... 
} 
+0

感谢您的帮助!我很少在数组中使用foreach循环,但现在我明白了它们。再次感谢! – 2012-04-06 04:14:36

+0

应该是'elseif'(没有空格)。 – 2012-04-06 05:17:33

+0

@Mike'else if'工作得很好,完全一样,IMO更具可读性。 – deceze 2012-04-06 06:10:36

2

deceze的答案是正确的一般,但更具体,下面的代码应该工作:

foreach ($array as $key => $value) { 
    if ($value > 30) { 
     echo '> 30:' . $key . '<br>'; 
    } elseif ($value <= 30) { // Changed this to <= to cover the case of $value = 30 
     echo '< 30:' . $key . '<br>'; 
    } 
}