phpbar.de logo

Mailinglisten-Archive

[php] array nach schlüssel sortieren

[php] array nach schlüssel sortieren

Michael Borchers list at tridemail.de
Fre Feb 9 13:24:20 CET 2007


>> Folgendes Array $arr habe ich:
>>
>> Array
>> (
>>    [44] => Array
>>        (
>>            [angebot_umsatz1] => 50            [angebot_umsatz2] => 150
>>                )
>>
>>        )
>>
>>    [23] => Array
>>        (
>>            [angebot_umsatz1] => 250            [angebot_umsatz2] => 350
>>
>>        )}Nun möchte ich das Array nach z.b. Schlüssel 'angebot_umsatz2'
>> sortieren!Wie mache ich das?!
>
> Bevor es zur Verwirrung kommt, klar kann ich normal sortieren mit 
> multisort
>
> array_multisort($arr[44], array('angebot_umsatz2', 'angebot_umsatz1'));
>
> Aber beim Ausgeben in einer foreach Schleife müsste ja $arr[23] zuerst
> erscheinen,
> das bekomme ich nicht hin:(

Ich habs z zt wiefolgt gelöst:

function compare($a, $b) {
 global $key;
       return strnatcasecmp($a[$key], $b[$key]);
}
$key = 'angebot_umsatz2';

usort($arr, "compare");

funzt auch, aber es gibt doch sicher ne hübschere methode als $key global zu 
setzen, oder?! 


php::bar PHP Wiki   -   Listenarchive