imap_getmailboxes
(PHP 4, PHP 5)
imap_getmailboxes — Liefert detailierte Informationen zu allen verfügbaren Postfächern
Beschreibung
$imap_stream
, string $ref
, string $pattern
)Liefert Postfachinformationen
Parameter-Liste
-
imap_stream -
Eine von imap_open() zurückgegebene IMAP-Verbindung.
-
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
patternbenutzt werden: '*' und '%'. Mit '*' werden alle Postfächer angefordert, so können Sie z.B. nur '*' alspatternü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 '%' alspatternliefert 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 attributes. 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
Beispiel #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);
?>