2015-11-20 118 views
4

我试图使用gmail的电子邮件作为反弹地址处理phplist中的退回电子邮件。当我尝试处理反弹时,我遇到了与此Post - There are 250 bounces to process中提到的类似情况。imap_num_msg使用弹出协议返回的收件箱中的实际电子邮件数少于

Phplist能够从我的Gmail邮箱中只能获取250封电子邮件。在进一步调查phplists的代码时,我遇到了这个似乎是罪魁祸首的代码行。

$num = imap_num_msg($link); //获取只算250

跳过更多细节。我写了几行代码来使用imappop来获得邮件数量。而通过IMAP版本返回正确

$username = '[email protected]domain.com'; 
$password = 'password'; 

$hostname = '{imap.gmail.com:993/imap/ssl}INBOX'; 
$inbox = imap_open($hostname,$username,$password); 
$num = imap_num_msg($inbox); 
echo $num; // prints 65,051 (correct one) 

$hostname = '{pop.gmail.com:995/pop3/ssl}INBOX'; 
$inbox = imap_open($hostname,$username,$password); 
$num = imap_num_msg($inbox); 
echo $num; // prints 250 as count (wrong one) 

我真的需要知道为什么数是不同的协议相同的电子邮件不同的流行版本返回错误的计数。此外,我在互联网上找到的与phplist反弹处理有关的所有帮助明确要求使用{pop.gmail.com:995/pop3/ssl}INBOX版本。所以我不能冒险使用其他版本来处理反弹。

回答

3

Gmail有一个非标准的POP实现,一次只能显示250-300条消息,直到您下载并删除它们。或者,如果您使用最近的:用户名作为您的用户名,它会显示最近30天。

无论哪种方式,如果您想要完全访问您的Gmail帐户,则需要使用IMAP。

+0

有趣。我很好奇他们是否有其他古怪。你有没有参考他们的实施? – bishop

+0

我不确定是否有任何一个地方记录了他们的流行古怪,但以下是最近的模式:https://support.google.com/mail/answer/47948?hl = zh_CN – Max

+0

hmm。但问题是,phplist论坛上的每个人似乎都推荐使用pop。没有一个使用IMAP提到的鞋底。这实际上是在扰乱我。 –

相关问题