PHP Handbuch
Zurück |  | Weiter

# LXVII. IMAP, POP3 and NNTP Functions

# Einführung

Die Funktionen dieser Extension ermöglichen die Kommunikation mit IMAP, NNTP und POP3 Servern sowie den Zugriff auf lokale Mailbox-Dateien.

Einige Funktionen dieser Extension setzten allerdings das IMAP-Protokoll voraus.

# Anforderungen

Diese Extension benötigt die c-client Bibliothek, die jeweils aktuelle Version des Quellcodes dieser Bibliothek findet sich unter ftp://ftp.cac.washington.edu/imap/.

Wenn Sie die Bibliothek selbst kompilieren ist es wichtig das Sie die Headerdateien nicht direkt im Standard-Includeverzeichnis ablegen da dies zu Namenskonflikten führen kann. Stattdessen sollten sie ein neues Unterverzeichnis, z.B. `/usr/local/imap-2000b/`, mit zwei weiteren Unterverzeichnissen `lib` und `include` anlegen. Kopieren sie alle `*.h` aus den `c-client` Quellcodeverzeichnis in das neue `include` Verzeichnis und alle `*.c` Dateien in das neue `lib` Verzeichnis. Die bei der Kompilation des Bibliotheksquellcodes erzeugte Datei `c-client.a` kopieren als `libc-client.a` ebenfalls in das neue `lib` Verzeichnis.

> Anmerkung: Nähere Informationen zur Aktivierung der SSL und Kerberos Unterstützung der Bibliothek finden Sie in der im Sourcepacket enthaltenen Dokumentation.

> Anmerkung: Mandrake Linux liefert die IMAP Bibliothek `libc-client.a`) ohne Kerberos-Unterstützung aus. Eine seperate Version mit SSL-Unterstützung wird als `client-PHP4.a` mitgeliefert. Für Kerberos-Unterstützung müssen Sie die Bibliothek selbst kompilieren.

# Installation

Um diese Funktionen zu nutzen müssen sie PHP mit `--with-imap[=DIR]` kompilieren, wobei DIR der Installationsprefix der c-client Bibliothek ist. Wenn Sie diese wie oben angegeben installiert haben können Sie `--with-imap=/usr/local/imap-2000b` als Konfigurationsoption angeben. Windows-Benutzer können die `php_imap.dll` DLL in `php.ini` einbinden. IMAP wird beginnend mit Windows 2000 unterstützt, älteren Windows-Versionen fehlen die benötigten Verschlüsselungsfunktionen um SSL-verschlüsselte Verbindungen zum Mailserver zu ermöglichen.

> Anmerkung: Je nachdem wie c-client konfiguriert wurde müssen Sie eventuall `--with-imap-ssl=/path/to/openssl/` und/oder `--with-kerberos=/path/to/kerberos` zu den PHP Konfigurationsoptionen hinzufügen.

Warnung
Die IMAP Erweiterung kann nicht zusammen mit recode, YAZ oder Cyrusverwendet werden. Diese Tatsache liegt darin begründet, dass beide Erweiterungen gleiche interne Symbole benutzen.

# Laufzeit Konfiguration

Diese Erweiterung definiert keine Konfigurationseinstellungen in der `php.ini`.

# Resource Typen

# Vordefinierte Konstanten

Folgende Konstanten werden von dieser Erweiterung definiert und stehen nur zur Verfügung, wenn die Erweiterung entweder statisch in PHP kompiliert oder dynamisch zur Laufzeit geladen wurde.

`NIL` (integer)

`OP_DEBUG` (integer)

`OP_READONLY` (integer)

  Postfach nur zum Lesen öffnen

`OP_ANONYMOUS` (integer)

  Für News keine `.newsrc` Datei lesen oder schreiben (nur NNTP)

`OP_SHORTCACHE` (integer)

`OP_SILENT` (integer)

`OP_PROTOTYPE` (integer)

`OP_HALFOPEN` (integer)

  Verbindung aufbauen aber noch kein Postfach öffnen (IMAP und NNTP)

`OP_EXPUNGE` (integer)

`OP_SECURE` (integer)

`CL_EXPUNGE` (integer)

  Löschen aller dazu markierten Nachrichten beim Beenden der Verbindung mit imap_close()

`FT_UID` (integer)

  Der Parameter ist eine UID

`FT_PEEK` (integer)

  Das \Seen Flag nicht verändern

`FT_NOT` (integer)

`FT_INTERNAL` (integer)

  Der Ergebnistext ist in internem Format, es wurde keine Umwandlung der Zeilenenden vorgenommen.

`FT_PREFETCHTEXT` (integer)

`ST_UID` (integer)

  Die übergebene Sequenz enthält UIDs an Stelle von Nachrichtennummern

`ST_SILENT` (integer)

`ST_SET` (integer)

`CP_UID` (integer)

  Die Sequenz enthält UIDs

`CP_MOVE` (integer)

  Lösche Nachrichten aus dem aktuellen Postfach nachdem sie mit imap_mail_copy() kopiert wurden.

`SE_UID` (integer)

  Liefere UIDs an Stelle von Nachrichtennummern zurück

`SE_FREE` (integer)

`SE_NOPREFETCH` (integer)

  Suchergebnisse nicht vorab übertragen

`SO_FREE` (integer)

`SO_NOSERVER` (integer)

`SA_MESSAGES` (integer)

`SA_RECENT` (integer)

`SA_UNSEEN` (integer)

`SA_UIDNEXT` (integer)

`SA_UIDVALIDITY` (integer)

`SA_ALL` (integer)

`LATT_NOINFERIORS` (integer)

  Das Postfach enthält keine weiteren Unterpostfächer

`LATT_NOSELECT` (integer)

  Dieses Postfach enthält nur Unterpostfächer, keine Nachrichten, und kann daher nicht geöffnet werden

`LATT_MARKED` (integer)

  Das Postfach ist markiert (nur UW-IMAPD)

`LATT_UNMARKED` (integer)

  Das Postfach ist nicht markiert (nur UW-IMAPD)

`SORTDATE` (integer)

  Sortieren nach Sendedatum in imap_sort()

`SORTARRIVAL` (integer)

  Sortieren nach Empfangsdatum in imap_sort()

`SORTFROM` (integer)

  Sortieren nach Absender in imap_sort()

`SORTSUBJECT` (integer)

  Sortieren nach Betreff in imap_sort()

`SORTTO` (integer)

  Sortieren nach Empfänger in imap_sort()

`SORTCC` (integer)

  Sortieren nach Cc Adresse in imap_sort()

`SORTSIZE` (integer)

  Sortieren nach Größe in imap_sort()

`TYPETEXT` (integer)

`TYPEMULTIPART` (integer)

`TYPEMESSAGE` (integer)

`TYPEAPPLICATION` (integer)

`TYPEAUDIO` (integer)

`TYPEIMAGE` (integer)

`TYPEVIDEO` (integer)

`TYPEOTHER` (integer)

`ENC7BIT` (integer)

`ENC8BIT` (integer)

`ENCBINARY` (integer)

`ENCBASE64` (integer)

`ENCQUOTEDPRINTABLE` (integer)

`ENCOTHER` (integer)

# Siehe auch

Dieses Dokument kann nicht alle von den enthaltenen Funktionen berührten Themenbereiche im Detail beschreiben. Weitergehende Informatione finden sie in der Dokumentation zum c-client Sourcecode (`docs/internal.txt`) und in den folgenden RFC Standarddokumenten:

- RFC2821: Simple Mail Transfer Protocol (SMTP).

- RFC2822: Standard for ARPA internet text messages.

- RFC2060: Internet Message Access Protocol (IMAP) Version 4rev1.

- RFC1939: Post Office Protocol Version 3 (POP3).

- RFC977: Network News Transfer Protocol (NNTP).

- RFC2076: Common Internet Message Headers.

- RFC2045 , RFC2046 , RFC2047 , RFC2048 & RFC2049: Multipurpose Internet Mail Extensions (MIME).

Einen detailierten Überblick über die relevanten Themen bieten auch die Bücher Programming Internet Email von David Wood und Managing IMAP von Dianna Mullet & Kevin Mullet.

Zurück | Zum Anfang | Weiter
imagick_zoom | Nach oben | imap_8bit