Größte Zahl in 2D Element herausfinden?
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
-
Hallo
ich habe ein 2 dimensionales Array und möchte von einem bestimmten Wert herausfinden
welcher dieser Werte der "größte" (Zahl) ist
Array ( [0] => array ( [name] =>... [num] => 3 ... ) [1] => array ( [name] ... [num] => 1 ... ) [2] => array ( [name] ... [num] => 5 ... ) [3] => array ( [name] ... [num] => 2 ... ) [4] => array ( [name] ... [num] => 4 ... ) )
wie komme ich darauf, dass Element [2] den größten Wert in [num] hat ?
also als Ergebnis nur das Haupt-Element mit dem höchsten Wert bei [num]
array ( [name] ... [num] => 5 ... )
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Gehe das Array mit einer foreach-Schleife durch und speichere den Wert des num-Elements des Array-Elements in einer Variable, sofern er größer ist, als die Zahl, die aktuell in der Variable gespeichert ist.
-
habe es ausprobiert, und dann festgestellt,
dass ich ja auch noch einen Zähler brauche,
um das Hauptelement zu speichern
in dem der Maximum-Wert steckt ....
$i = 0; $max = 0; foreach ($data as $item ) { if ( $item['num'] > $max ) { $max = $item['num']; $k = $i } $i++; } $neudata = $data[$k];
oder ist es so besser ?
$neudata = array(); $max = 0; foreach ($data as $item ) { if ( $item['num'] > $max ) { $max = $item['num']; $neudata = $item; } }
dann habe ich dann in $neudata das einzelne Sub-Array
... mein Such-Array kann recht gross sein
oder Idee, Such-Array Sortierung nach num
EDIT: array_multisort ... aber wie?
und dann einfach das erste Element raus picken
ich glaub das müsste auch gehen, weiss nur nicht wie
und was schneller bzw. Ressourcen-sparender ist
Beitrag zuletzt geändert: 11.10.2011 11:37:43 von funspiele -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage