例如,在我的gmail帐户中,我的邮件数量不能超过15Gb。有没有办法用php的imap函数以某种方式检索这个数字?PHP imap - 获取邮箱的最大容量
我知道有imap_mailboxmsginfo(),它会告诉我现在有多少内存(例如350MB),但并不是说15GB是最大的,这就是问题所在。
例如,在我的gmail帐户中,我的邮件数量不能超过15Gb。有没有办法用php的imap函数以某种方式检索这个数字?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
,那么你运气不好,无法真正获得你正在寻找的数据。
gmail支持QUOTA扩展。您应该可以使用imap_get_quota或imap_get_quotaroot函数。配额根名称似乎只是“”。 – Max 2015-03-13 19:22:09