使用imap追加将已发送的邮件添加到imap邮箱后,PHP IMAP获取uid
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了使用imap追加将已发送的邮件添加到imap邮箱后,PHP IMAP获取uid,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含842字,纯文字阅读大概需要2分钟。
内容图文
![使用imap追加将已发送的邮件添加到imap邮箱后,PHP IMAP获取uid](/upload/InfoBanner/zyjiaocheng/677/b77ead023a824754bd7cf3bc0782342b.jpg)
我想获取我附加的消息的消息uid.这是代码,未经测试,肯定是错误的:
$imapStream = imap_open($imapPath,$imapUser,$imapPass);
imap_append($imapStream,$imapPath,$mail->getMailString(),"\\Seen");
$check = imap_check($imapStream);
$uid=imap_uid($imapStream,$check->Nmsgs);
imap_close($imapStream);
基本上,我在imap_append调用之后执行的操作是运行imap_check以获取消息计数,然后将消息计数传递到imap_uid中以获取消息uid.这可能不对,但这是我第一次使用imap和Im,只是想弄清楚这一点.
任何帮助将不胜感激.
解决方法:
是的,这是错误的-您有一个竞争条件,如果您在追加消息的时间与查询消息的时间之间收到另一条消息,则将遇到这种情况.
您可能希望使用UIDPLUS IMAP extension(如果有),并查阅APPENDUID响应代码.如果由于某种原因无法使用此选项,则最可靠的选择是发送一个条件为UID SEARCH的命令,该条件为您刚刚附加的消息的Message-Id标头的HEADER匹配项.如果退回一个或多个UID,那么您就搞砸了.
内容总结
以上是互联网集市为您收集整理的使用imap追加将已发送的邮件添加到imap邮箱后,PHP IMAP获取uid全部内容,希望文章能够帮你解决使用imap追加将已发送的邮件添加到imap邮箱后,PHP IMAP获取uid所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。