Mehrdimensionales array sortieren....

WorldRacer

Erfahrenes Mitglied
Hi,

ich wette, es gibt das thema schon tausend mal, und weiss es auch, da ich nachgeschaut habe, aber ich bin einfach zu blöd es zu kapiern...deshalb die frage noch einmal....

Ich habe ein Mehrdimensionales Array (aus einer MySqldatenbank), das nicht von mysql sortierbar ist, und möchte dort zahlenwerte sortieren...

es sieht etwa so aus:
Code:
id       title       date
1        blah        1215030623
2        blah2       1215032849
3        blah3       1180898238
4        blah4       1200073316

diese Tabelle(bzw. Array) nach "date" sortieren. Ich habe null ahung wie es gehen soll, habs schon mit usort versucht, habs aber wahrscheinlich falsch angewendet...:

PHP:
function cmp($a, $b)
{
    if ($a == $b) {
        return 0;
    }
    return ($a < $b) ? -1 : 1;
}
usort($objArray, "cmp");

Es gibt keine Fehlermeldung aber es geschieht auch nichts...

Hilfe...ich bin ratlos....

Danke schonmal im Vorraus!

Marco
 
Code:
id       title       date
1        blah        1215030623
2        blah2       1215032849
3        blah3       1180898238
4        blah4       1200073316

Wie ist denn der Datentyp von "date"? Normalerweise müsste "ORDBER BY date ASC / DESC" gehen!

PHP:
function cmp($a, $b)
{
    if ($a['date'] == $b['date']) {
        return 0;
    }
    return ($a['date'] < $b['date']) ? -1 : 1;
}
usort($objArray, "cmp");
Du musst auch die richtige Dimension miteinander vergleichen ;)
 
Danke erstmal für die perfekte lösung...Darauf wär ich nie gekomm...

Hab shcon alles versucht, er sortiert sie falsch wenn ichs mit mysql versuche... ist datetime-format. Habe schon alles versucht...So hab ich jetzt die lösung gefunden:

1. Datum in timestamp gewandelt
2. timestamps sortiert
3. wieder umgewandelt ;-)
 

Neue Beiträge

Zurück