1

我想要完成的是让用户能够向指定的电子邮件地址发送电子邮件。然后,一旦获得该电子邮件,运行一个解析电子邮件正文部分的脚本,并使用电子邮件中提供的信息执行各种任务(来自电子邮件的数据将以 xml 类型格式结构化)。

在我看来,这似乎是一项简单的任务,但我对电子邮件的内部工作原理并不十分熟悉。我的问题是:

  1. 一旦从发件人处获得电子邮件以便处理,我如何知道?
  2. 如何使用 php 获取电子邮件中的文本?
4

2 回答 2

2

如果您的邮件服务器上运行 PHP,则可以将传入的邮件通过管道传输到 PHP 脚本。然后,您的 PHP 脚本可以在每条传入消息到达时对其进行解析。有关更多信息,请参阅http://harrybailey.com/2009/02/send-or-pipe-an-email-to-a-php-script/

于 2013-08-07T23:55:49.743 回答
1

我同意其他回复,将管道连接到 php 应用程序应该是您的第一选择(如果邮件服务器和 php 相同)

否则,如果您有外部邮件服务器,则需要定期轮询电子邮件地址并检查新电子邮件。

从电子邮件中提取纯文本正文并不难,但有时获取附件可能会很痛苦。

您将需要使用 cronjob 定期触发您的脚本

为了从服务器获取电子邮件并解析它,我使用了 php IMAP 函数 http://php.net/manual/en/book.imap.php

您还可以使用 MandrillApp 之类的 3rd 方服务,它会接收消息,将其分成几部分,然后通过 webhook 调用您的应用程序。

http://help.mandrill.com/entries/21699367-Inbound-Email-Processing-Overview

于 2013-08-08T00:18:46.670 回答