首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >性能: imap_headers()还是imap_fetchheader()?

性能: imap_headers()还是imap_fetchheader()?
EN

Stack Overflow用户
提问于 2014-10-14 13:10:13
回答 1查看 776关注 0票数 0

我需要下载邮箱中的所有标头(不需要正文)。一个邮箱很可能有100 k条或更多的消息。

imap_headers()承诺返回邮箱的所有标头;这将使使用起来更加简单。不过,我担心这是否会在IMAP服务器的范围内发挥作用(而且有些服务器没有给出所有的头)。

另一种方法是使用imap_search()获取is列表,然后使用imap_fetchheader()迭代并获取所有头(可能使用某种类型的队列系统)。

有人注意到这个问题了吗?如果imap_headers“可靠地”工作(或者有一种简单的方法来判断它失败了),那么这将是更好的选择;否则我认为imap_fetchheader是可行的。

EN

回答 1

Stack Overflow用户

发布于 2014-10-15 00:16:43

这两种方法在任何情况下都不会有很好的效果。请求邮箱中包含数千条或几十万条消息的所有邮件的消息头是一个错误的想法。另一方面,一个接一个地处理它们也不明智,因为您使用的库是同步的,因此您将受到运行PHP脚本的主机和正在查询的IMAP服务器之间往返时间的限制。

获取一个异步IMAP库,并使用一些大小合理的窗口/消息范围来获取。例如,每次检索几十条或几百条信息可能是合理的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26361708

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档