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 muß immer mit angegeben
werden. Enthält der Name eines Postfachs Zeichen außerhalb des
druckbaren ASCII-Bereiches wie z.B. Umlaute oder das 'ß', so muß
er mit Hilfe der Funktion imap_utf7_encode()
codiert werden.
Der optionale Parameter flags kann sich
aus den folgenden Bitmasken zusammensetzen:
OP_READONLY - Über diese Verbindung darf nur lesend
zugegriffen werden
OP_ANONYMOUS - Bei NNTP-Verbindungen wird die Datei .newsrc
nicht aktualisiert
OP_HALFOPEN - es wird eine IMAP- oder NNTP-Verbindung
aufgebaut, aber noch kein Postfach ausgewählt
CL_EXPUNGE - beim Schließen der Verbindung werden alle zum
Löschen vorgemerkte Nachrichten endgültig gelöscht (siehe auch
imap_delete() und
imap_expunge())
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:
Eine Verbindung zu einem lokalen News-Server (NNTP = Port 119)
erhalten Sie mit:
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); |
|