【问题标题】:Is it possible to retrieve the original headers from a forwarded email in php是否可以从 php 中的转发电子邮件中检索原始标题
【发布时间】:2012-03-26 13:09:52
【问题描述】:

我正在尝试解析具有以下生命周期的电子邮件(虚拟示例):

两天前

来自:a@a.com

收件人:b@b.com

Subjet:你好!

昨天

来自:b@b.com

到:a@a.com

Subjet : Re: 你好!

今天

邮件被转发到 c@c.com。 我可以访问此邮箱,并且可以通过 php 和 imap 函数检索电子邮件。我现在可以解析邮件,并获得以下信息:

来自:a@a.com

收件人:c@c.com

Fwd : Re: 你好!

无论如何我可以得到那封电子邮件的历史记录吗?我希望能够显示如下内容:

邮件历史记录:

  • 从 a@a.com 到 c@c.com - Fwd:回复:您好! -今天
  • 从 b@b.com 到 a@a.com - 回复:您好! - 昨天
  • 从 a@a.com 到 b@b.com - 你好! - 两天前

编辑更准确地说,我真正需要得到的唯一事情是邮件在转发到 c@c.com 之前发生了什么(在我的示例中) , 从 b@b.com 发送到 c@c.com)。我真的不需要了解之前发生的事情。

我在网上搜索了很长时间,但是由于我的英语不是很流利,所以我可能没有使用最好的查询...

感谢您的帮助!

【问题讨论】:

    标签: php parsing email history


    【解决方案1】:

    除非信息包含在邮件本身中,否则不会。

    您可以查看原始邮件,包括标题和原始正文,以了解邮件中的内容。如果它不在其中,并且您无权访问它首先经过的其他帐户,那么您就无法获取该消息的历史记录。

    消息可以包含这样的标题:

    Message-Id: <6F995D33-8CF3-4F49-AA6A-9D59B4779CCE@example.com>
    In-Reply-To: <795EDCA1-7FD4-429C-88E9-26A85C442A5B@example.com>
    References: <b2hxc23ycjm05kradmfswofk.1332762974483@email.example.com> <D37FF604-43A2-42F8-AD11-2F2012D2E8B7@example.com> <795EDCA1-7FD4-429C-88E9-26A85C442A5B@example.com>
    

    只有当您可以访问这些标头中引用的原始消息时,这才真正有用。如果你得到的只是链中的最后一封邮件,那么这不是很有用。

    最好的办法是在邮件中查找引用的内容,例如:

    > On 2012/03/24, b@b.com wrote:
    
    > ...
    
    >> On 2012/03/23, a@a.com wrote:
    
    >> ...
    

    虽然这些行没有标准化格式,但每个电子邮件程序都会插入自己的版本,有时是用户自定义的,有时是本地化的。所以它们很难可靠地解析出来。

    【讨论】:

    • 我担心答案会是这样的......我想由于一些明显的隐私原因,没有办法得到它。好吧,我会尝试从电子邮件正文中猜测它,非常感谢。
    猜你喜欢
    • 2013-09-16
    • 2011-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-15
    • 2023-03-30
    • 1970-01-01
    • 2012-12-20
    相关资源
    最近更新 更多