imap_getmailboxes

(PHP 4, PHP 5, PHP 7)

imap_getmailboxesListe les boîtes aux lettres, et retourne les détails de chacune

Description

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

Liste les boîtes aux lettres.

Liste de paramètres

imap_stream

Un flux IMAP retourné par la fonction imap_open().

ref

ref ne devrait être que le serveur sous la forme décrite dans imap_open()

Avertissement

Passer des données qui ne sont pas digne de confiance à ce paramètre est dangereux, sauf si, imap.enable_insecure_rsh est désactivé.

pattern

Spécifie la position dans la hiérarchie des boîtes aux lettres, où il faut commencer à chercher.

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'intéresse 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.

Valeurs de retour

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 :

  • 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) et ne peut en contenir aucun. Un appel à la fonction imap_createmailbox() ne fonctionnera pas sur cette boîte.

  • 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. Ceci signifie qu'elle peut contenir des nouveaux messages depuis la dernière fois qu'elle a été vérifiée. Ce marqueur n'est pas fourni avec tous les serveurs IMAP.

  • LATT_UNMARKED - Cette boîte aux lettres n'est pas marquée et ne contient pas de nouveaux messages. Si MARKED ou UNMARKED est fourni, vous pouvez supposer que le serveur IMAP supporte cette fonctionnalité pour cette boîte aux lettres.

  • LATT_REFERRAL - Ce conteneur a une référence vers une boîte aux lettres distante.

  • LATT_HASCHILDREN - Cette boîte aux lettres a des inférieurs sélectionnables.

  • LATT_HASNOCHILDREN - Cette boîte aux lettres n'a pas d'inférieurs sélectionnables.

Exemples

Exemple #1 Exemple avec imap_getmailboxes()

<?php
$mbox 
imap_open("{imap.example.org}""username""password"OP_HALFOPEN)
      or die(
"Connexion impossible : " imap_last_error());

$list imap_getmailboxes($mbox"{imap.example.org}""*");
if (
is_array($list)) {
    foreach (
$list as $key => $val) {
        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