imap_get_quota

(PHP 4 >= 4.0.5)

imap_get_quota --  Lit les quotas des boîtes aux lettres

Description

array imap_get_quota ( resource imap_stream, string quota_root)

imap_get_quota() retourne un tableau contenant les valeurs de quota et courante de la boîte aux lettres quota_root. Le quota représente la taille maximale de votre boîte aux lettres. La valeur courante est l'espace actuellement utilisé par votre boîte aux lettres. imap_get_quota() retournera FALSE en cas d'échec.

imap_get_quota() ne fonctionne actuellement qu'avec les librairies c-client2000.

imap_stream doit avoir été créé avec la fonction imap_open(). Ce flux est nécessairement ouvert en tant qu'administrateur du serveur, pour que les droits nécessaires lui soit alloué. quota_root doit être de la forme : "user.nom", où "nom" est le nom de la boîte aux lettres que vous souhaitez analyser.

Exemple 1. Exemple avec imap_get_quota()

<?php
$mbox
= imap_open("{votre.hote.imap}","mailadmin","mot de passe",OP_HALFOPEN)
     or die(
"Connexion impossible : ".imap_last_error());
$quota_value = imap_get_quota($mbox, "user.toto");
if(
is_array($quota_value)) {
   print
"Utilisation actuelle : " . $quota_value['usage'];
   print
"Quota : " . $quota_value['limit'];
}
imap_close($mbox);
?>

Depuis PHP 4.3, la fonction reflète plus fidèlement les fonctionnalités édictée par la RFC 2087. Le tableau retourné a changé pour supporter un nombre illimité de ressources retournées (i.e. messages ou sous-dossiers) avec chaque ressource nommée qui est identifiée par une clé. Chaque clé contient alors un autre tableau avec l'utilisation et le quota. L'exemple ci-dessous montre comment l'utiliser.

Pour des raisons de compatibilité, la méthode d'accès originale est toujours disponible, mais il est recommandé de l'abandonner.

Exemple 2. Exemple avec imap_get_quota() pour PHP 4.3

$mbox = imap_open("{your.imap.host}","mailadmin","password",OP_HALFOPEN)
      or die("Impossible de se connecter : ".imap_last_error());
       
$quota_values = imap_get_quota($mbox, "user.kalowsky");
if(is_array($quota_values)) {
   $storage = $quota_values['STORAGE'];
   print "Utilisation actuelle de la capacit&eacute; de stockage : " .  $storage['usage'];
   print "Quota actuel de stockage : " .  $storage['limit'];

   $message = $quota_values['MESSAGE'];
   print "Niveau d'utilisation de MESSAGE : " .  $message['usage'];
   print "Quota de MESSAGE : " .  $message['limit'];

   /* ...  */
}

imap_close($mbox);

Voir aussi imap_open(), imap_set_quota() et imap_get_quotaroot().