Imap-Sort()

crazy_chicken

Erfahrenes Mitglied
Hallo Zusammen,

da bin ich wieder mit dem IMAP :)
Ich will den Posteingang sortiert ausgeben, aber hier wird nichts sortiert:

PHP:
        $mbox =  imap_open("xx", "xx", "xx") or die(imap_last_error());
        imap_sort($mbox, SORTDATE, 0);
        $emails = imap_search($mbox,'ALL');
       

        foreach($emails as $email_number) {

               $header = imap_headerinfo($mbox, $email_number, 0);
               echo 'Datum: '.$header->date." <br>";

       }

Mache ich etwas falsch?

Danke euch!
 
Zuletzt bearbeitet:
imap_sort() gibt die Daten bereits als sortiertes Array zurück. Es macht keinen Sinn, erst zu sortieren, das Ergebnis zu ignorieren und dann noch mal alles unsortiert abzuholen. Versuch es mal so:

PHP:
        $mbox =  imap_open("xx", "xx", "xx") or die(imap_last_error());
        $emails = imap_sort($mbox, SORTDATE, 0);

        foreach($emails as $email_number) {

               $header = imap_headerinfo($mbox, $email_number, 0);
               echo 'Datum: '.$header->date." <br>";

       }
 
So, danke, ich habe es jetzt hinbekommen.

Falls jemand irgendwann das braucht:
PHP:
// Bei 1 wird es wie "DESC" sortiert und bei 0 wie "ASC"
$emails = imap_sort($mbox, SORTDATE, 1);
 
Zurück