2015-03-13 57 views
0

例如,在我的gmail帐户中,我的邮件数量不能超过15Gb。有没有办法用php的imap函数以某种方式检索这个数字?PHP imap - 获取邮箱的最大容量

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

+1

gmail支持QUOTA扩展。您应该可以使用imap_get_quota或imap_get_quotaroot函数。配额根名称似乎只是“”。 – Max 2015-03-13 19:22:09

回答

1

是的,你可以用下面的代码来实现它: 可能会对你有帮助。你可以试试一次吗?

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']; 

} 
0

请注意,QUOTA扩展名不需要存在。这意味着一些IMAP服务器可能会实现它,而另一些则不会。如果服务器不想像QUOTA,那么你运气不好,无法真正获得你正在寻找的数据。