imap_getmailboxes

(PHP 3>= 3.0.12, PHP 4 , PHP 5)

imap_getmailboxes --  Liste les boîtes aux lettres, et retourne les détails de chacune

Description

array imap_getmailboxes ( resource imap_stream, string ref, string pattern )

imap_getmailboxes() retourne un tableau d'objets contenant les informations sur les boîtes aux lettres. Chaque objet possède un attribut 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 :

Les noms de boîtes aux lettres contenant des caractères internationaux hors de l'espace ASCII seront encodés et pourront être décodés avec imap_utf7_decode().

ref ne devrait être que le serveur sous la forme décrite dans imap_open(), et pattern spécifie la position dans la hiérarchie des boîtes aux lettres, où il faut commencer à chercher. Si vous voulez passer en revue toute la hiérarchie, 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, "{votre.hote.imap}", "*");
if(
is_array($list)) {
    
reset($list);
    while (list(
$key, $val) = each($list)) {
        echo
"($key) ";
        echo
imap_utf7_decode($val->name).",";
        echo
"'" . $val->delimiter . "',";
        echo
$val->attributes . "<br />\n";
    }
} else {
    echo
"imap_getmailboxes a échoué : " . imap_last_error() . "\n";
}

imap_close($mbox);
?>

Voir aussi imap_getsubscribed().