phpbar.de logo

Mailinglisten-Archive

[php] mehrdimensionales Array nach Werten sortieren

[php] mehrdimensionales Array nach Werten sortieren

Christoph Kramesch christoph at kramesch.com
Die Aug 23 16:18:32 CEST 2005


>  > $arr[0][name] = "Lehmann"
> > $arr[0][vorname] = "bla"
> > $arr[0][kdnr] = 3
> > ...
> > $arr[1][name] = "Böhme"
> > $arr[1][vorname] = "bla"
> > $arr[1][kdnr] = 5
>
> Nun verzweifel ich hier aber auch so langsam. Es gibt so viel Stoff
> zum Nachlesen, aber nichts trifft den Punkt, so wie ich es brauche.
> Sind denn meine Sortierwünsche so ausgefallen ?! Ich bin allen
> Hnweisen nachgegangen, aber nichts hat funktioniert.

Und wenn gar nix mehr hilft, die Doku zu grausum, und Effizienz nicht
die oberste
Priorität ist bzw. nur wenige Einträge zum sortieren sind,
kann man schnell eine Sortierung selbstschreiben:
(ist allerdings nicht gerade ein effizienter Algorithmus)

for ($i = 0; $i < count($arr)-1;$i++){
  for ($j = $i+1; $j<count($arr);$j++){
      if ($arr[$i]['Suchfeld'] > $arr[$j]['Suchfeld'] ) {
        $help = $arr[$i];
        $arr[$i] = $arr[$j];
        $arr[$j] = $help;
      }
  }
}
statt des Vergleichs kann man auch eine Prozedurvariable einsetzen
damit kann man dann die Art des Vergleiches etwas dynamischer
gestalten..

lG Christoph


php::bar PHP Wiki   -   Listenarchive