XLII. IMAP

Introduction

These functions are not limited to the IMAP protocol, despite their name. The underlying c-client library also supports NNTP, POP3 and local mailbox access methods.

Pré-requis

Cette extension requiert la librairie C cliente. Téléchargez cette dernière version à ftp://ftp.cac.washington.edu/imap/ et compilez la.

Puis, copiez le fichier c-client/c-client.a dans /usr/local/lib ou n'importe quel autre dossier qui soit dans le chemin de link. Enfin, copiez les fichiers c-client/rfc822.h, mail.h et linkage.h dans /usr/local/include ou n'importe quel autre dossier qui soit dans le chemin d'inclusion.

Note : Assurez vous que c-client.a est bien dans votre chemin de link, sous le nom libc-client.a.

Copiez les fichiers suivants dans le dossier /usr/local/include ou dans n'importe quel dossier qui soit dans votre chemin d'inclusion.

c-client.h
imap4r1.h
rfc822.h
mail.h
linkage.h
env.h
env_unix.h
fs.h
ftl.h
misc.h
nntp.h
nl.h
osdep.h
smtp.h
tcp.h

Note : Le nom de env_unix.h dépend de votre OS. Assurez vous que ces fichiers sont bien copiés avec l'option de suivi des liens. Pour compiler la librairie C cliente avec SSL et/ou avec le support Kerberos, lisez la doc fournie dans la distribution.

Installation

To get these functions to work, you have to compile PHP with --with-imap[=DIR], where DIR is the c-client install prefix. From our example above, you would use --with-imap=/usr/local/imap-2000b. This location depends on where you created this directory according to the description above. Windows users may include the php_imap.dll DLL in php.ini

Note : Depending how the c-client was configured, you might also need to add --with-imap-ssl=/path/to/openssl/ and/or --with-kerberos=/path/to/kerberos into the PHP configure line.

Avertissement

L'extension IMAP ne peut être utilisée simultanément avec l'extension recode ou l'extension YAZ. Ceci est dû au fait que ces deux librairies utilisent un symbole interne commun.

Configuration à l'exécution

Cette extension ne définit aucune directive de configuration.

Types de ressources

Constantes prédefinies

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

NIL (integer)

OP_DEBUG (integer)

OP_READONLY (integer)

OP_ANONYMOUS (integer)

OP_SHORTCACHE (integer)

OP_SILENT (integer)

OP_PROTOTYPE (integer)

OP_HALFOPEN (integer)

OP_EXPUNGE (integer)

OP_SECURE (integer)

CL_EXPUNGE (integer)

FT_UID (integer)

FT_PEEK (integer)

FT_NOT (integer)

FT_INTERNAL (integer)

FT_PREFETCHTEXT (integer)

ST_UID (integer)

ST_SILENT (integer)

ST_SET (integer)

CP_UID (integer)

CP_MOVE (integer)

SE_UID (integer)

SE_FREE (integer)

SE_NOPREFETCH (integer)

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)

LATT_NOSELECT (integer)

LATT_MARKED (integer)

LATT_UNMARKED (integer)

SORTDATE (integer)

SORTARRIVAL (integer)

SORTFROM (integer)

SORTSUBJECT (integer)

SORTTO (integer)

SORTCC (integer)

SORTSIZE (integer)

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)

Voir aussi

Ce document ne peut entrer dans les détails de toutes les sujets abordés. Plus d'informations sont disponibles avec la documentation de la librairie C (docs/internal.txt) ainsi que les RFC suivantes : documents:

  • RFC821: Simple Mail Transfer Protocol (SMTP).

  • RFC822: 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).

Une étude approfondie est aussi disponible dans les livres suivants (en anglais): Programming Internet Email par David Wood et Managing IMAP par Dianna Mullet & Kevin Mullet.

Avertissement

Des crashs et des problèmes de démarrage de PHP sont possibles lorsque vous chargez cette extension en même temps que l'extension recode. Voyez l'extension recode pour plus d'informations.

Table des matières
imap_8bit --  Convertit une chaîne à 8 bits en une chaîne à guillemets.
imap_alerts --  Retourne toutes les alertes
imap_append --  Ajoute une chaîne dans une boîte aux lettres.
imap_base64 -- Décode un texte encodé en BASE64
imap_binary --  Convertit une chaîne à 8 bits en une chaîne à base64.
imap_body -- Lit le corps d'un message
imap_bodystruct --  Lit la structure d'une section du corps d'un mail
imap_check --  Vérifie le courrier de la boîte aux lettres courante.
imap_clearflag_full -- Supprime un flag sur un message
imap_close -- Termine un flux IMAP
imap_createmailbox -- Crée une nouvelle boîte aux lettres
imap_delete --  Marque le fichier pour l'effacement, dans la boîte aux lettres courante
imap_deletemailbox -- Efface une boîte aux lettres
imap_errors --  Retourne toutes les erreurs
imap_expunge --  Efface tous les messages marqués pour l'effacement.
imap_fetch_overview --  Lit un sommaire des en-têtes de messages
imap_fetchbody -- Retourne une section extraite du corps d'un message
imap_fetchheader -- Retourne l'en-tête d'un message
imap_fetchstructure --  Lit la structure d'un message.
imap_get_quota --  Lit les quotas des boîtes aux lettres
imap_get_quotaroot -- Lit les quotas de chaque utilisateur
imap_getacl --  Retourne le ACL pour la boîte aux lettres
imap_getmailboxes --  Liste les boîtes aux lettres, et retourne le détail pour chacune.
imap_getsubscribed -- Liste toutes les boîtes aux lettres souscrites
imap_header -- Lit l'en-tête d'un message
imap_headerinfo -- Lit l'en-tête du message
imap_headers --  Retourne les en-têtes de tous les messages d'une boîte aux lettres.
imap_last_error --  Retourne la dernière erreur (si elle existe) qui est survenu lors de la dernière requête.
imap_list -- Lit la liste des boîtes aux lettres
imap_listmailbox -- Liste les boîtes aux lettres
imap_listscan --  Lit la liste des boîtes aux lettres, et y recherche une chaîne
imap_listsubscribed -- Liste les boîtes aux lettres souscrites
imap_lsub -- Liste toutes les boîtes aux lettres enregistrées
imap_mail_compose --  Crée un message MIME
imap_mail_copy --  Copie les messages spécifiés dans une boîte aux lettres.
imap_mail_move --  Déplace des messages dans une boîte aux lettres
imap_mail --  Envoie un message mail
imap_mailboxmsginfo --  Lit les informations à propos de la boîte aux lettres courante.
imap_mime_header_decode -- Décode les éléments MIME d'une en-tête
imap_msgno --  Retourne le numéro de séquence de message pour un UID donné.
imap_num_msg --  Retourne le nombre de message dans la boîte aux lettres courante.
imap_num_recent --  Retourne le nombre de messages récents dans la boîte aux lettres courante.
imap_open --  Ouvre un flux IMAP vers une boîte aux lettres
imap_ping -- Vérifie que le flux IMAP est toujours actif
imap_qprint --  Convertit une chaîne à guillemets en une chaîne à 8 bits.
imap_renamemailbox -- Renomme une boîte aux lettres
imap_reopen --  Ouvre un flux IMAP vers une nouvelle boîte aux lettres.
imap_rfc822_parse_adrlist -- Analyse une adresse email
imap_rfc822_parse_headers -- Analyse un en-tête mail
imap_rfc822_write_address -- Retourne une adresse email formatée correctement
imap_scanmailbox --  Lit la liste des boîtes aux lettres, et y recherche une chaîne
imap_search --  Retourne un tableau de message après recherche.
imap_set_quota -- Modifie le quota d'une boîte aux lettres
imap_setacl --  Modifie le ACL de la boîte aux lettres
imap_setflag_full -- Positionne un flag sur un message
imap_sort -- Trie des messages
imap_status --  Retourne les informations de statut sur une boîte aux lettres autres que la boîte courante.
imap_subscribe -- Souscrit à une boîte aux lettres
imap_thread --  Retourne l'arbre de REFERENCE organisé par thread
imap_timeout --  Configure ou retourne le timeout
imap_uid --  Retourne l'UID d'un message.
imap_undelete -- Enlève la marque d'effacement d'un message
imap_unsubscribe -- Termine la souscription à une boîte aux lettres
imap_utf7_decode --  Décode une chaîne modifiée UTF-7.
imap_utf7_encode --  Convertit des données 8bit en texte UTF-7.
imap_utf8 --  Convertit du texte au format MIME en UTF8