好的,这个页面让我很抓狂。解析数组中返回的每一行很简单,但没有对这些标志的含义进行定义。所以我在网上搜索答案,结果发现这些信息:
A - 已回复:邮件已回复
N - 新:最近且未查看
R - 最近:最近且已查看
U - 未读:邮件尚未阅读
F - 标记:邮件被“标记”为紧急/需要特别注意
D - 已删除:邮件被“删除”,以便在之后的 EXPUNGE 操作中移除
X - 草稿:邮件尚未完成撰写(标记为草稿)。
请告诉我是否有错误...
(PHP 4, PHP 5, PHP 7, PHP 8)
imap_headers — 返回邮箱中所有邮件的标题
返回一个字符串数组,包含标题信息。每个邮件对应一个元素。如果失败,则返回 false
。
版本 | 描述 |
---|---|
8.1.0 | imap 参数现在需要一个 IMAP\Connection 实例;以前,需要一个有效的 imap 资源。 |
好的,这个页面让我很抓狂。解析数组中返回的每一行很简单,但没有对这些标志的含义进行定义。所以我在网上搜索答案,结果发现这些信息:
A - 已回复:邮件已回复
N - 新:最近且未查看
R - 最近:最近且已查看
U - 未读:邮件尚未阅读
F - 标记:邮件被“标记”为紧急/需要特别注意
D - 已删除:邮件被“删除”,以便在之后的 EXPUNGE 操作中移除
X - 草稿:邮件尚未完成撰写(标记为草稿)。
请告诉我是否有错误...
返回的格式非常固定
FLAGS (空格) NUMBER (*) DATE (空格) SENDER (空格) SUBJECT (空格) LENGTH
NUMBER 将是一个最多 4 位数字的左填充字符串 + “)”,从 5 位数字开始,就是这 5 位数字(不含“)”)
DATE 将是一个左填充字符串,如 “ 2-Apr-2021” 或一个非填充字符串,如 “13-Apr-2021”
SENDER 长度为 20 个字符
SUBJECT 长度为 25 个字符
LENGTH 是一个字符串,如 “(1248 chars)” ,但它允许更多位数字且没有填充。
此函数如果主题超过 25 个字符,将不会返回完整的主题行。我在尝试搜索每个标题并根据主题(搜索年份和项目编号)将邮件移动到不同的文件夹时发现了这一点。
只是一个有用的提示,许多 IMAP 服务器将在该函数响应的主题之前包含非标准标志,放在花括号中。确定邮件是否被转发(例如,使用 IMAP 函数时),很可能只能通过这种方式。第一个(或更多)标志可能以美元符号 ($) 为前缀。服务器收到的任何此类标志很可能(很可能)可以通过 imap_append 传递到该服务器。
邮件标志描述可以在官方 imap_headerinfo 页面 (https://php.net/manual/en/function.imap-headerinfo.php) 的“返回值”段落中找到。