如何使用PHP IMAP继续从邮箱下载相同的邮件

时间:2012-02-08 16:41:24

标签: php imap pop3

我正在尝试编写一个cron作业,检查然后对我邮箱中的邮件进行一些转换。我正在使用PHP IMAP扩展程序并通过POP3访问邮箱(谷歌托管)。

我正在测试它,我希望能够在邮箱中收到一封电子邮件,并继续在该电子邮件中测试我的代码,直到我开心为止。

不幸的是,一旦我检查了那封电子邮件,它将不再下载,我将“邮箱空”。任何人都可以帮我节省一些时间,让我知道如何继续检查邮件我已经检查过了吗?

1 个答案:

答案 0 :(得分:1)

当你通过pop3获取邮件时,有两种不同的选择:

  • pop可以从服务器获取邮件(这通常是默认设置)或
  • pop可以从服务器读取邮件并将其留在那里(这称为“留在服务器上”)

您需要在服务器上休假。

还有一个名为“看到”的标志,用于确定哪些邮件未读给你。确保您正确处理此标记,否则您可能会要求邮件,而且您的邮件不是新邮件。

imap_status()将设置读取标志,imap_num_msg()不会触摸任何标志。

imap_fetchstructure()不仅提取消息结构,而且提取整个消息,我怀疑它也标记了邮件读取。当您在像thunderbird这样的客户端中明确将邮件标记为新(或未读)时,请验证它是否发生了任何变化:概述中有一个绿色气泡,当读取邮件时会变为黑色。单击它以标记邮件未读。