MSVerweigerer: IMAP-Ausgabe sortieren

Hallo zusammen!

Ich sitze zur Zeit an einem aufwendigen IMAP-Script für meinen Webserver, um meinen Kunden endlich auch ein Webinterface für Ihre emails bieten zu können. Nach anfänglichen Problemen kam ich gut voran. Doch jetzt hänge ich an folgendem Problem: Ich hätte die Ausgabe der in einem Postfach vorhandenen mails gerne von neu nach alt und nicht andersrum sortiert, wie es standardmäßig der Fall ist. Ein kurzer Ausschnitt aus meinem Code:

$a = 0;
$b = @imap_num_msg($mbox);
while($a < $b) {
    $a = $a+1;
    $header = @imap_header ($mbox, $a);
    $from = $header->from[0];
    $date = date("d.m.Y", $header->udate);
    $time = date("G:i", $header->udate);
    echo $from->personal . $date . $time;
}

Um es nicht zu lang machen habe ich den Ausschnitt jetzt ganz extrem gekürzt, alle nicht fürs Sortieren relevante bzw. interessante Punkte sind weg.
Natürlich kenne ich den Befehl imap_sort aber mir ist es schleierhaft, wie ich ihn auf obigen Code anwenden soll (sollte das überhaupt gehen).

Für jede Hilfe bin ich sehr dankbar!

Mit freundlichen weihnachtlichen Grüßen,
der MSVerweigerer

  1. Moin!

    Natürlich kenne ich den Befehl imap_sort aber mir ist es schleierhaft, wie ich ihn auf obigen Code anwenden soll (sollte das überhaupt gehen).

    Ich sehe das Problem jetzt nicht so, was daran liegen mag, dass ich diese Funktionen noch nie benutzt habe.

    Laut http://www.php.net/manual/en/function.imap-sort.php erwartet imap_sort() einen ressource stream (sehr wahrscheinlich doch das Handle zur Mailbox), und außerdem ein paar Angaben, wie sortiert werden soll, und liefert ein Array mit Nachrichtennummern zurück.

    Die Vorgehensweise wäre also, einmal mit imap_sort die Mailbox sortiert nach Nachrichten abzufragen, daraufhin das Array zu erhalten, und dann nacheinander die Nachrichtennummern im Array nochmal genauer unter die Lupe zu nehmen für die Ausgabe.

    - Sven Rautenberg

    --
    "Bei einer Geschichte gibt es immer vier Seiten: Deine Seite, ihre Seite, die Wahrheit und das, was wirklich passiert ist." (Rousseau)
    1. Hallo Sven!

      Vielen Dank, ich habs zwar noch nicht probiert aber ich gehe momentan davon aus, dass du mir damit schon sehr geholfen hast ;)

      Gruß