PHP 获取邮箱的最大容量


PHP get the maximum capacity of mailbox

例如,在我的Gmail帐户中,我的邮件不能超过15Gb。有没有办法使用 php 的 imap 函数以某种方式检索这个数字?

我知道有imap_mailboxmsginfo(),它会告诉我我现在使用了多少内存(例如350MB),但它并没有说15GB是最大值,这就是问题所在。

是的,您可以使用以下行代码来实现它:也许它可以对你有所帮助。你能试一次吗?

array imap_get_quota ( resource $imap_stream , string $quota_root );
$mbox = imap_open("{imap.example.org}", "mailadmin", "password", OP_HALFOPEN)
  or die("can't connect: " . imap_last_error());
$quota_values = imap_get_quota($mbox, "user.kalowsky");
if (is_array($quota_values)) {
   $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 is: " .  $message['limit'];
}

imap_get_quota()看起来就像你需要的。

请注意,QUOTA扩展名不需要存在。这意味着某些 IMAP 服务器可能会实现它,而其他服务器则不会。如果服务器没有QUOTA,那么您就不走运了,无法真正获得所需的数据。