Manuel PHP
Précédent |  | Suivant

# XLIV. IMAP

# Introduction

Ces fonctions ne sont pas limitées au protocole IMAP, malgrès leur nom. La bibliothèque cliente C supporte aussi les méthodes d'accès à NNTP, POP3 et aux boîtes aux lettres locales.

# Pré-requis

Cette extension requiert la bibliothèque 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 bibliothèque C cliente avec SSL et/ou avec le support Kerberos, lisez la doc fournie dans la distribution.

# Installation

Pour avoir accès à ces fonctions, vous devez compiler PHP avec l'option --with-imap[=DIR], où DIR est le préfixe de l'installation du client C. Dans nos exemples, vous pourriez utiliser --with-imap=/usr/local/imap-2000b. Le nom du dossier d'installation dépend de l'emplacement où vous avez créé le dossier, en fonction de la description ci-dessus. Les utilisateurs Windows peuvent inclure la bibliothèque DLL `php_imap.dll` dans le `php.ini`

> Note : Suivant la configuration de la bibliothèque C cliente, vous pouvez aussi avoir besoin d'ajouter --with-imap-ssl=/path/to/openssl/ et/ou --with-kerberos=/path/to/kerberos dans la ligne de configuration PHP.

Avertissement
L'extension IMAP ne peut être utilisée simultanément avec l'extension recode, l'extension YAZ ou l'extension Cyrus. Ceci est dû au fait que ces bibliothèques 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` (entier)

`OP_DEBUG` (entier)

`OP_READONLY` (entier)

  Ouvre une boîte aux lettres en lecture seule

`OP_ANONYMOUS` (entier)

  Ne pas utiliser, ou modifier le fichier `.newsrc` pour les news, (NNTP uniquement).

`OP_SHORTCACHE` (entier)

`OP_SILENT` (entier)

`OP_PROTOTYPE` (entier)

`OP_HALFOPEN` (entier)

  Pour les noms IMAP et NNTP, ouvre une connexion mais n'ouvre pas une boîte aux lettres.

`OP_EXPUNGE` (entier)

`OP_SECURE` (entier)

`CL_EXPUNGE` (entier)

  purger automatiquement la boîte aux lettres lors de l'appel de imap_close()

`FT_UID` (entier)

  Le paramètre est un UID.

`FT_PEEK` (entier)

  Ne pas lever le drapeau \Seen (Message lu) s'il n'est pas déjà levé.

`FT_NOT` (entier)

`FT_INTERNAL` (entier)

  La chaîne renvoyée est au format interne, et ne va pas canoniser les CRLF.

`FT_PREFETCHTEXT` (entier)

`ST_UID` (entier)

  la séquence contient des UID au lieu de numéros de séquence

`ST_SILENT` (entier)

`ST_SET` (entier)

`CP_UID` (entier)

  La séquence de nombres contient des UID

`CP_MOVE` (entier)

  Efface les messages après copie avec imap_mail_copy()

`SE_UID` (entier)

  Retourne des UID à la place de numéros

`SE_FREE` (entier)

`SE_NOPREFETCH` (entier)

  Ne pas pré-télécharger les messages trouvés

`SO_FREE` (entier)

`SO_NOSERVER` (entier)

`SA_MESSAGES` (entier)

`SA_RECENT` (entier)

`SA_UNSEEN` (entier)

`SA_UIDNEXT` (entier)

`SA_UIDVALIDITY` (entier)

`SA_ALL` (entier)

`LATT_NOINFERIORS` (entier)

  Cette boîte aux lettres n'a pas d'"enfants" (il n'y a plus de boîtes aux lettres en dessous de celle-ci).

`LATT_NOSELECT` (entier)

  Ceci est juste un container, pas une boîte aux lettres (vous ne pouvez pas l'ouvrir).

`LATT_MARKED` (entier)

  Cette boîte aux lettres est marquée. Utilisé uniquement avec UW-IMAPD.

`LATT_UNMARKED` (entier)

  Cette boîte aux lettres n'est pas marquée. Utilisé uniquement avec UW-IMAPD.

`SORTDATE` (entier)

  Critère de tri pour imap_sort() : Date du message

`SORTARRIVAL` (entier)

  Critère de tri pour imap_sort() : Date d'arrivée

`SORTFROM` (entier)

  Critère de tri pour imap_sort() : Nom de la première boîte aux lettres de l'adresse d'origine (From address)

`SORTSUBJECT` (entier)

  Critère de tri pour imap_sort() : Sujet du message

`SORTTO` (entier)

  Critère de tri pour imap_sort() : Nom de la première boîte aux lettres de destination (To address)

`SORTCC` (entier)

  Critère de tri pour imap_sort() : Nom de la boîte aux lettres de copie cachée (cc address)

`SORTSIZE` (entier)

  Critère de tri pour imap_sort() : Taille du message en octets

`TYPETEXT` (entier)

`TYPEMULTIPART` (entier)

`TYPEMESSAGE` (entier)

`TYPEAPPLICATION` (entier)

`TYPEAUDIO` (entier)

`TYPEIMAGE` (entier)

`TYPEVIDEO` (entier)

`TYPEOTHER` (entier)

`ENC7BIT` (entier)

`ENC8BIT` (entier)

`ENCBINARY` (entier)

`ENCBASE64` (entier)

`ENCQUOTEDPRINTABLE` (entier)

`ENCOTHER` (entier)

# Voir aussi

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

- 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 et 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.

Précédent | Sommaire | Suivant
png2wbmp | Niveau supérieur | imap_8bit