【发布时间】:2013-01-23 11:08:23
【问题描述】:
一个简单的问题,但我似乎无法在任何地方找到可靠的答案。我正在使用 PHP IMAP 来处理邮箱中的消息,但我正在使用基于 imap_num_msg 的循环来处理它们。
$imap = imap_open("{imap.test.com:143}INBOX", "test@test.com", "password");
$message_count = imap_num_msg($imap);
for ($i = 1; $i <= $message_count; ++$i)
{ "Processing Code using $i" }
imap_expunge($imap);
imap_close($imap);
这是正确的处理方式,还是我应该为每条消息获取一组 UID?如果我坚持这段代码,当有新消息进来时会发生什么,消息的顺序会改变并影响循环吗?
【问题讨论】:
-
新邮件总是出现在最后。但是,您应该更担心已删除的消息...... RFC 中有一些保护措施可以防止在执行此类任务时重新排序消息序列号。 .. 我的建议是尽可能使用 UID,如果这足以满足您的应用程序。