Forum und email

imap_getmailboxes

(PHP 4, PHP 5)

imap_getmailboxes — Liefert detailierte Informationen zu allen verfügbaren Postfächern

Beschreibung

array imap_getmailboxes ( resource $imap_stream , string $ref , string $pattern )

Liefert Postfachinformationen

Parameter Liste

imap_stream

An IMAP stream returned by imap_open().

ref

Spezifikation des gewünschten Servers wie in imap_open() beschrieben.

pattern

Legt fest ab welchem Punkt der Postfachhierachie gesucht werden soll.

Zwei spezielle Zeichen können als Teil des Suchmusters pattern benutzt werden: '*' und '%'. Mit '*' werden alle Postfächer angefordert, so können Sie z.B. nur '*' als pattern übergeben und erhalten eine Übersicht aller auf dem Server verfügbarer Postfächer. '%' liefert alle Postfächer auf einer Hierachieebene aber nicht die tiefer liegenden Postfächer. Ein einfaches '%' als pattern liefert nur die Postfächer der obersten Ebene, '~/mail/%' z.B. liefert auf einem UW_IMAP Server alle Postfächer des ~/mail Verzeichnisses aber nicht deren Unterpostfächer.

Rückgabewerte

Liefert ein Array das Objekte mit Postfachbeschreibungen enthält. Jedes Objekt verfügt über die Attribute name für den Namen des Postfachs, delimiter für das gültige Hierachietrennzeichen innerhalb des Hierachieabschnitts in dem sich das Postfach befindet und Eigenschaften des Postfachs in attribute . Die Eigenschaften setzen sich als Bitmaske aus folgenden möglichen Werten zusammen:

  • LATT_NOINFERIORS - innerhalb dieses Postfachs existieren keine weiteren Unterpostfächer
  • LATT_NOSELECT - dieses Postfach enthält nur Unterpostfächer aber keine Nachrichten, es kann nicht geöffnet werden
  • LATT_MARKED - dieses Postfach ist markiert (nur bei UW-IMAPD)
  • LATT_UNMARKED - dieses Postfach ist nicht markiert (nur bei UW-IMAPD)

Beispiele

Example#1 imap_getmailboxes() Beispiel

<?php
$mbox 
imap_open("{imap.example.org}""username""password"OP_HALFOPEN)
      or die(
"can't connect: " imap_last_error());

$list imap_getmailboxes($mbox"{imap.example.org}""*");
if (
is_array($list)) {
    foreach (
$list as $key => $val) {
        echo 
"($key) ";
        echo 
imap_utf7_decode($val->name) . ",";
        echo 
"'" $val->delimiter "',";
        echo 
$val->attributes "<br />\n";
    }
} else {
    echo 
"imap_getmailboxes failed: " imap_last_error() . "\n";
}

imap_close($mbox);
?>