imap_open

imap_open -- Öffnet eine Verbindung zu einem Postfach auf einem POP-, IMAP- oder NNTP-Server

Beschreibung

int imap_open ( string mailbox, string username, string password [, int flags])

Diese Funktion liefert ein Verbindungs-Handle bzw . FALSE bei evtl . auftretenden Fehlern . Verbindungen können nicht nur zu IMAP- , sondern auch zu POP - oder NNTP-Servern aufgebaut werden , wobei dann allerdings nicht der gesamte Funktionsumfang zur Verfügung steht . Liefert ein IMAP-Streamhandle oder FALSE bei Fehlern .

Der Name eines Postfachs setzt sich zusammen aus der Bezeichnung des Servers und dem Pfad des Postfachs auf diesem Server . Der spezielle Name INBOX steht dabei als Synonym für das persönliche Postfach des jeweiligen Benutzers . Die Bezeichnung des Servers setzt sich zusammen aus dem eigentlichen Servernamen oder der entsprechenden IP-Adresse sowie das gewünschte Protokoll ( getrennt durch ' / ' ) und optional der zu benutzende Port (getrennt durch ' :' ) . Die gesamte Serverbezeichnung wird in ' { ' und '} ' eingeschlossen und muss immer mit angegeben werden . Enthält der Name eines Postfachs Zeichen außerhalb des druckbaren ASCII-Bereiches wie z.B . Umlaute oder das ' ß' , so muss er mit Hilfe der Funktion imap_utf7_encode( ) codiert werden .

Der optionale Parameter flags kann sich aus den folgenden Bitmasken zusammensetzen :



Das folgende Beispiel stellt eine Verbindung zu einem lokalen IMAP-Server ( IMAP = Port 143 ) her :




Eine Verbindung zu einem lokalen POP3-Server (POP3 = Port 110) erhalten sie mit:
 
$mbox

 
=

 
imap_open

 
(

 
"{localhost

 
/

 
pop3:110}INBOX"

 
,

 
"user_id"

 
,

 
"password")

 
;



Eine Verbindung zu einem lokalen News-Server (NNTP = Port 119) erhalten Sie mit:
 
$nntp

 
=

 
imap_open

 
(

 
"{localhost

 
/

 
nntp:119}comp.test"

 
,

 
""

 
,

 
"")

 
;



Eine Verbindung zu einem nicht lokalen Server können Sie herstellen, indem Sie in den oben genannten Beispielen "localhost" durch den Namen oder die IP-Adresse des Servers ersetzen.

Beispiel 1 . imap_open( ) Beispiel

 
$mbox

 
=

 
imap_open

 
(

 
"{your.imap.host:143}"

 
,

 
"username"

 
,

 
"password")

 
;

 
echo

 
"

 
p

 
h1

 
Mailboxes

 
/

 
h1

 
\n"

 
;

 
$folders

 
=

 
imap_listmailbox

 
($mbox

 
,

 
"{your.imap.host:143}"

 
,

 
"*")

 
;

 
if

 
($folders

 
==

 
false

 
)

 
echo

 
"Call

 
failed

 
br

 
\n"

 
;

 
else

 
while

 
(list

 
($key

 
,

 
$val

 
)

 
=

 
each

 
($folders)

 
)

 
echo

 
$val

 
.

 
"

 
br

 
\n"

 
;

 
echo

 
"

 
p

 
h1

 
Headers

 
in

 
INBOX

 
/

 
h1

 
\n"

 
;

 
$headers

 
=

 
imap_headers

 
($mbox)

 
;

 
if

 
($headers

 
==

 
false

 
)

 
echo

 
"Call

 
failed

 
br

 
\n"

 
;

 
else

 
while

 
(list

 
($key

 
,

 
$val

 
)

 
=

 
each

 
($headers)

 
)

 
echo

 
$val

 
.

 
"

 
br

 
n"

 
;

 
imap_close

 
($mbox)

 
;