(PHP 4 >= 4.3.0, PHP 5)
imap_get_quotaroot — Retrieve the quota settings per user
$imap_stream
, string $quota_root
)Retrieve the quota settings per user. 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.
imap_stream
由 imap_open() 返回的 IMAP 流。
quota_root
quota_root
should normally be in the form of
which mailbox (i.e. INBOX).
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.
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.
Example #1 imap_get_quotaroot() example
<?php
$mbox = imap_open("{imap.example.org}", "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 limit level is: " . $message['limit'];
/* ... */
}
imap_close($mbox);
?>
This function is currently only available to users of the c-client2000 or greater library.
The imap_stream
should be opened as the user whose
mailbox you wish to check.
uphonesimon at gmail dot com (2005-09-21 16:37:29)
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 (2004-09-15 11:07:18)
The example above isn't 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 (2003-08-30 07:55:10)
['STORAGE']['usage'] and ['STORAGE']['limit'] are values in KB (1024 Bytes)