Manuel PHP
Précédent |  | Suivant

# XLIII. IMAP

# Introduction

Ces fonctions ne sont pas limitées au protocole IMAP, malgrès leurs noms. La librairie 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 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

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 librairie DLL `php_imap.dll` dans le `php.ini`

> Note : Suivant la configuration de la librairie 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 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` (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 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 :

- 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
read_exif_data | Niveau supérieur | imap_8bit