你能通过PHP接收电子邮件吗?

25

我知道你可以使用PHP发送电子邮件,但是你能通过PHP接收电子邮件吗?


您可以将传入的电子邮件导向 PHP 脚本,或像下面这样使用 IMAP。 - user557846
肯定是个好问题。 - Humphrey
5个回答

19

您可以将传入的电子邮件导入到PHP脚本中,以便直接处理。Evolt有一篇关于如何设置这样东西的文章。如果您想通过发送电子邮件来激活脚本(例如取消用户的通讯邮件的响应),那么这可能会很有用。

如果您只想使用PHP读取邮件,则PHP具有原生函数可用于与IMAP、NNTP和POP邮箱进行通信。


有人知道如何在Windows Server环境中将传入的电子邮件导入到PHP脚本中吗? - Jasper
很遗憾,链接已经失效了,你有没有偶然保存的版本呢? - Amirmasoud
1
@Amirmasoud 将链接替换为存档版本。 - Eran Galperin

4

请看http://cloudmailin.com,它可以帮助你更方便地接收邮件,并通过HTTP Post直接将其发送到你的应用程序。我们有很多PHP用户使用该系统来接收电子邮件。


5
请注意,这是一项付费服务。目前每月最多可免费接收200封电子邮件,并提供各种价格层次(从每月9美元起,可接收高达3,000封电子邮件)的服务。 - Vern Jensen

3

可以使用PHP编写一个绑定端口并监听传入电子邮件的邮件服务器。
但是我不建议使用PHP进行此类任务,这也将是一个非常复杂的过程。

您可以将现有邮件服务器作为回调脚本进行挂接,或通过POP或IMAP定期查询邮件服务器。后者是最常见的选择:运行一个PHP脚本,在间隔时间内通过cron任务处理电子邮件帐户。请参阅http://php.net/imap


2

-1

只有邮件服务器才能接收电子邮件。您可以使用PHP读取邮件箱格式(例如mbox或Maildir)来阅读电子邮件。

作为IMAP / POP3服务器运行的PHP脚本可以接收发送到它们的电子邮件。


Eran Galperin:我从未说过 PHP 脚本不能接收电子邮件。我的意思是只有邮件服务器才能接收电子邮件,这基本上意味着 PHP 脚本应该充当邮件服务器来接收电子邮件。 - Alan Haggai Alavi
1
@Alan,仍然不正确,脚本可以以原始形式接收电子邮件,它不必充当邮件服务器才能这样做。只需读取stdin输入即可。 - Eran Galperin
Eran Galperin:那是一个选项。我已经开始阅读邮箱格式,这是另一个选项。 - Alan Haggai Alavi
1
你说:只有邮件服务器才能接收电子邮件 - 这是不正确的。PHP脚本不必充当IMAP或POP服务器来接收电子邮件。除非你指出了OP所问的另一种选择,否则你的答案是不正确的。 - Eran Galperin
Eran Galperin:这仍然是正确的。只有邮件服务器可以接收电子邮件。其他人可以阅读电子邮件。 - Alan Haggai Alavi
错误的:根据定义,任何能够接收电子邮件的东西都是邮件服务器,可以是PHP或其他任何东西。 - Alexar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接