imap_getmailboxes

imap_getmailboxes -- Liefert detailierte Informationen über eine Auswahl von Postfächern

Beschreibung

array imap_getmailboxes ( int imap_stream, string ref, string pat)

imap_getmailboxes( ) liefert ein Array zurück , das für jedes gefundene Postfach ein Objekt mit de Attributen name , delimiter und attributes enthält . name enthält dabei den vollständigen Pfadnamen des Postfachs , delimiter das verwendete Trennzeichen zwischen Postfach-Ebenen , und attributes besteht aus einer Bitmaske , die einzelne Eigenschaften des Postfachs beschreibt :



Namen von Postfächern , die Zeichen außerhalb des druckbaren ASCII-Bereiches enthalten , können mit Hilfe der Funktion imap_utf7_decode( ) dekodiert werden .

ref sollte normalerweise nur die Spezifikation des Servers in der in imap_open( ) beschriebenen Form enthalten . Über pat kann ein Startpunkt innerhalb der Postfach-Hierachie vorgegeben werden . Wünschen Sie die Ausgabe aller Postfächer , so übergeben Sie als pat ' * ' .

Die Zeichen ' * ' und '% ' haben innerhalb von pattern eine besondere Bedeutung :

So liefert "*" alle verfügbaren Postfächer auf dem Server, "INBOX/*" dementsprechend alle persönlichen Postfächer des aktuellen Benutzers. "%" dagegen liefert nur die Toplevel-Postfächer des Servers, "INBOX/%" dementsprechend nur die Toplevel-Postfächer des aktuellen Benutzers. Ein '%' am Ende von pattern entspricht zusätzlich auch allen Zeichenfolgen, die mit dem Trennzeichen beginnen.

Beispiel 1 . imap_getmailboxes( ) Beispiel

 
$mbox

 
=

 
imap_open

 
(

 
"{your.imap.host}"

 
,

 
"username"

 
,

 
"password"

 
,

 
OP_HALFOPEN

 
)

 
|

 
|

 
die

 
("can't

 
connect

 
:

 
"

 
.

 
imap_last_error())

 
;

 
$list

 
=

 
imap_getmailboxes

 
($mbox

 
,

 
"{your.imap.host}"

 
,

 
"*")

 
;

 
if

 
(is_array

 
($list)

 
)

 
{

 
reset

 
($list)

 
;

 
while

 
(list

 
(

 
$key

 
,

 
$val

 
)

 
=

 
each

 
($list)

 
)

 
{

 
print

 
"($key

 
)

 
"

 
;

 
print

 
imap_utf7_decode

 
($val

 
-

 
name

 
)

 
.

 
"

 
,"

 
;

 
print

 
"'

 
"

 
.

 
$val

 
-

 
delimiter

 
.

 
"'

 
,"

 
;

 
print

 
$val

 
-

 
attributes

 
.

 
"

 
br

 
\n"

 
;

 
    }

 
}

 
else

 
{

 
print

 
"imap_getmailboxes

 
failed

 
:

 
"

 
.

 
imap_last_error(

 
)

 
.

 
"\n"

 
;

 
}

 
imap_close

 
($mbox)

 
;