Manuel PHP
Précédent |  | Suivant

# imap_getmailboxes

(3.0.12 - 3.0.18 only, PHP 4 >= 4.0.0)

imap_getmailboxes -- Liste les boîtes aux lettres, et retourne le détail pour chacune.

## Description

``array imap_getmailboxes` (resource imap_stream, string ref, string pat)`

imap_getmailboxes() retourne un tableau d'objets contenant les informations sur les boîtes aux lettres. Chaque objet a les attributs de `name`, qui contient le nom complet de la boîte aux lettres; `delimiter`, qui est le délimiteur hiérarchique; et `attributes`. `Attributes` est un masque de bits, qui contient :

- LATT_NOINFERIORS - 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 - Ceci est juste un container, pas une boîte aux lettres (vous ne pouvez pas l'ouvrir).

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

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

`ref` ne devrait être que le serveur IMAP sous la forme `{imap_server:imap_port}`, et `pattern` spécifie la position dans la hiérarchie des boîtes aux lettres, où il faut commencer à charcher. Si vous voulez passer en revue toute la hiérarchier, passez '*' comme `pattern`.

Il y a deux caractères spéciaux que vous pouvez utiliser dans `pattern` : '*' et '%'. '*' signifie : toutes les boîtes aux lettres. Si vous passez `pattern` comme '*', vous obtiendrez la liste complète des boîtes aux lettres de la hiérarchie. '%' signifie qu'on ne s'interesse qu'au niveau courant. '%' passé à `pattern` ne retournera que les boîtes aux lettres de niveau supérieur; '~/mail/%'.Sous UW_IMAPD retournera toutes les boîtes aux lettres du dossier `~/mail directory`, mais pas leurs enfants.

Exemple 1. Exemple avec imap_getmailboxes()
    <?php
    $mbox = imap_open("{your.imap.host}","utilisateur","mot_de_passe",OP_HALFOPEN)
         or die("connexion impossible: ".imap_last_error());
    $list = imap_getmailboxes($mbox,"{your.imap.host}","*");
    if(is_array($list)) {
     reset($list);
     while (list($key, $val) = each($list))
     {
       print "($key) ";
       print imap_utf7_decode($val->name).",";
       print "'".$val->delimiter."',";
       print $val->attributes."<br>\n";
     }
    } else
     print "imap_getmailboxes a échoué : ".imap_last_error()."\n";
    imap_close($mbox);
    ?>

Voir aussi imap_getsubscribed().

Précédent | Sommaire | Suivant
imap_get_quota | Niveau supérieur | imap_getsubscribed