2012-04-06 8 views
0

Wenn ich ein Array haben:
PHP - mit Hilfe von Operatoren Array vergleichen Werte

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

wie kann ich so etwas wie:

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

so dass das Ergebnis wäre:

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

Danke! Ich hoffe, das macht Sinn ...

Antwort

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

Danke für Ihre Hilfe !! Ich benutze selten foreach Schleifen mit Arrays, aber jetzt verstehe ich sie. Danke noch einmal! –

+0

Sollte 'elseif' sein (kein Leerzeichen). –

+0

@Mike 'else if' funktioniert genauso gut und genau so und ist IMO besser lesbar. – deceze

2

deceze Antwort im Allgemeinen richtig ist, aber genauer gesagt, sollte der folgende Code arbeiten:

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