使用 IMAP 在 php 中获取电子邮件
Using IMAP to fetch emails in php
我正在使用 Imap 功能通过雅虎邮箱获取电子邮件。
然后我在每封电子邮件上设置标志,因为将来我调用 imap 搜索时,我将不会收到已经存在的电子邮件 fetched.This 是我收到电子邮件的方式。
$emails = imap_search($inbox,"UNFLAGGED");
然后我使用代码应用标志:
foreach($emails as $email_number) {
imap_setflag_full($inbox, $email_number, "\Flagged \Seen", ST_UID);
但是当我打电话给 imap_search($inbox,"UNFLAGGED");
时,我收到了相同的电子邮件。
当我第二次调用 imap_search 时,不应提取已被标记的电子邮件。
我也尝试了 imap_search($inbox,"unflagged")
、imap_search($inbox,"Unflagged")
和 imap_search($inbox,"UnFlagged")
,但仍然提取了所有电子邮件。
我试过 imap_search($inbox,"UNSEEN")
它在用户未手动阅读电子邮件(登录雅虎邮件然后阅读)的情况下很有用。
在我的例子中,我需要所有不是我使用 Imap 发送的 "Flagged" 的电子邮件。
需要这方面的帮助。
提前致谢
您正在搜索消息序列号,但在 UID 上设置了标志。选择一个或另一个。我建议总是 使用 UID。您是否尝试将 SE_UID 添加到搜索中:
$emails = imap_search($inbox, "UNFLAGGED", SE_UID);
我正在使用 Imap 功能通过雅虎邮箱获取电子邮件。 然后我在每封电子邮件上设置标志,因为将来我调用 imap 搜索时,我将不会收到已经存在的电子邮件 fetched.This 是我收到电子邮件的方式。
$emails = imap_search($inbox,"UNFLAGGED");
然后我使用代码应用标志:
foreach($emails as $email_number) {
imap_setflag_full($inbox, $email_number, "\Flagged \Seen", ST_UID);
但是当我打电话给 imap_search($inbox,"UNFLAGGED");
时,我收到了相同的电子邮件。
当我第二次调用 imap_search 时,不应提取已被标记的电子邮件。
我也尝试了 imap_search($inbox,"unflagged")
、imap_search($inbox,"Unflagged")
和 imap_search($inbox,"UnFlagged")
,但仍然提取了所有电子邮件。
我试过 imap_search($inbox,"UNSEEN")
它在用户未手动阅读电子邮件(登录雅虎邮件然后阅读)的情况下很有用。
在我的例子中,我需要所有不是我使用 Imap 发送的 "Flagged" 的电子邮件。
需要这方面的帮助。 提前致谢
您正在搜索消息序列号,但在 UID 上设置了标志。选择一个或另一个。我建议总是 使用 UID。您是否尝试将 SE_UID 添加到搜索中:
$emails = imap_search($inbox, "UNFLAGGED", SE_UID);