4

我正在尝试使用 gmail 的电子邮件作为退回地址来处理 phplist 中的退回电子邮件。当我尝试处理退回邮件时,我陷入了与这篇文章中提到的类似情况 - 有 250 次退回邮件要处理

Phplist 只能从我的 gmail 帐户中获取 250 封电子邮件。在进一步调查 phplists 的代码时,我发现这行代码似乎是罪魁祸首。

$num = imap_num_msg($link);// 仅获取 250 的计数

跳过更多细节。我编写了几行代码来使用imapand获取邮件计数pop。pop 版本返回错误的计数,而 imap 版本返回的计数是正确的

$username = 'bounceemail@mydomain.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版本。所以我不能冒险使用其他版本来处理退回邮件。

4

1 回答 1

3

Gmail 有一个非标准的 POP 实现,在您下载并删除它们之前,一次只公开 250-300 封邮件。或者,如果您使用最近的:用户名作为您的用户名,它将显示过去 30 天。

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

于 2015-11-20T13:20:59.853 回答