imap_get_quotaroot

(PHP 4 >= 4.3.0, PHP 5)

imap_get_quotaroot --  Retrieve the quota settings per user

Description

array imap_get_quotaroot ( resource imap_stream, string quota_root )

Returns an array of integer values pertaining to the specified user mailbox. All values contain a key based upon the resource name, and a corresponding array with the usage and limit values within.

The limit value represents the total amount of space allowed for this user's total mailbox usage. The usage value represents the user's current total mailbox capacity. This function will return FALSE in the case of call failure, and an array of information about the connection upon an un-parsable response from the server.

This function is currently only available to users of the c-client2000 or greater library.

imap_stream should be the value returned from an imap_open() call. This stream should be opened as the user whose mailbox you wish to check. quota_root should normally be in the form of which mailbox (i.e. INBOX).

例子 1. imap_get_quotaroot() example

<?php
$mbox
= imap_open("{your.imap.host}", "kalowsky", "password", OP_HALFOPEN)
      or die(
"can't connect: " . imap_last_error());

$quota = imap_get_quotaroot($mbox, "INBOX");
if (
is_array($quota)) {
   
$storage = $quota_values['STORAGE'];
   echo
"STORAGE usage level is: " .  $storage['usage'];
   echo
"STORAGE limit level is: " .  $storage['limit'];

   
$message = $quota_values['MESSAGE'];
   echo
"MESSAGE usage level is: " .  $message['usage'];
   echo
"MESSAGE usage level is: " .  $message['limit'];

   
/* ...  */

}

imap_close($mbox);
?>

See also imap_open(), imap_set_quota() and imap_get_quota().


add a note add a note User Contributed Notes
uphonesimon at gmail dot com
22-Sep-2005 07:37
just to make a note for all the people that are wondering the differences between $quota['STORAGE'] and $quot['MESSAGE']
the $quot['STORAGE'] is the size of the mailbox in KB
but $quota['MESSAGE'] is actually the number of messages stored in the mailbox and the up limit of the total messages allowed
rodrigo dot tsuru at tsuru dot net
16-Sep-2004 02:07
The example above isnt right. Replace with this:

<?php
$mbox
= imap_open("{your.imap.host}", "kalowsky", "password", OP_HALFOPEN)
     or die(
"can't connect: " . imap_last_error());
 
$quota = imap_get_quotaroot($mbox, "INBOX");
if (
is_array($quota)) {
  
$storage = $quota['STORAGE'];
   echo
"STORAGE usage level is: " $storage['usage'];
   echo
"STORAGE limit level is: " $storage['limit'];

  
$message = $quota['MESSAGE'];
   echo
"MESSAGE usage level is: " $message['usage'];
   echo
"MESSAGE usage level is: " $message['limit'];

  
/* ...  */

}
 
imap_close($mbox);
?>
thomas dot hebinck at digionline dot de
30-Aug-2003 10:55
['STORAGE']['usage'] and ['STORAGE']['limit'] are values in KB (1024 Bytes)