['STORAGE']['usage'] and ['STORAGE']['limit'] are values in KB (1024 Bytes)
PHP - Manual: imap_get_quotaroot
2024-12-20
(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
imap_get_quotaroot — Retrieve the quota settings per user
$imap
, string $mailbox
): array|falseRetrieve 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
IMAP\Connection 实例。
mailbox
mailbox
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.
版本 | 说明 |
---|---|
8.1.0 |
现在 imap 参数接受 IMAP\Connection
实例,之前接受 资源(resource)。
|
示例 #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['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 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
should be opened as the user whose
mailbox you wish to check.
['STORAGE']['usage'] and ['STORAGE']['limit'] are values in KB (1024 Bytes)
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
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);
?>
官方地址:https://www.php.net/manual/en/function.imap-get-quotaroot.php