phpbar.de logo

Mailinglisten-Archive

[php] array nach schlüssel sortieren

[php] array nach schlüssel sortieren

Martin Spuetz mas at spuetz.ath.cx
Fre Feb 9 20:50:55 CET 2007


Hi,

Michael Borchers wrote:
> 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?! 

Wenn der zweite Parameter ein Callback ist, kannst du doch ein Objekt
übergeben, dann brauchst du den globalen Namespace nicht zu verschmutzen.

Sowas in der Art:

$obj = new...
usort($arr, array($obj, "compare"));

Unter php.net/callback gibt es glaub ich ein paar Infos dazu.

Gruss,
Martin

php::bar PHP Wiki   -   Listenarchive