如何从imap中检索具有一致id(消息id)的特定消息
我需要保留电子邮件的链接跟踪。我正在使用 PHP 和 IMAP。我需要一些 ID 来随着时间的推移识别电子邮件。使用 IMAP UID 似乎不起作用,因为 UID 在 expunge() 之后发生变化,我知道电子邮件有一个 message_id,但如何使用 PHP 和 IMAP 使用它的 message_id 检索电子邮件?
我可以使用其他标识符吗?
I need to keep a link tracking for an email message. I am using PHP and IMAP. I need some ID that identify the email over time. Using IMAP UID does not seems to work since the UID changes after expunge(), i know there is a message_id for emails, but how can i retrieve an email using it's message_id with PHP and IMAP?
Is there another identifier i can use?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要 UIDPLUS IMAP 扩展,特别是 UIDVALIDITY 命令。请参阅 RFC 4315。
许多 PHP 网络邮件项目实际上已经使用了它。如果您需要示例和/或灵感,我建议您查看 Squirrelmail 的源代码。 (Squirrelmail 有一个优秀的 IMAP 后端;其他网络邮件项目或类也可能工作,但我个人不知道他们是否使用 UIDPLUS)。
You need UIDPLUS IMAP extension, specifically the UIDVALIDITY command. See RFC 4315.
Many PHP webmail projects actually use this already. I suggest you take a look at Squirrelmail's source code if you need examples and/or inspiration. (Squirrelmail has an excellent IMAP backend; other webmail projects or classes might also work but I personally don't know if they use UIDPLUS).