我正在构建一个程序,需要根据某些事件发送多封电子邮件。我使用PHP邮件功能编码,但建议不要使用它。
有人可以解释PHP邮件功能与使用Sendgrid,Mandrill等商业服务的工作方式之间的区别吗?当我可以很好地使用免费的PHP邮件功能发送邮件时,为什么会使用这些服务?
答案 0 :(得分:1)
批量邮件和广告系列管理是一项复杂的组织和技术挑战,但大多数开源php lib都不会为电子邮件提供帮助(只需添加HTML格式和支持附件)。
他们无法处理IPR,SPF,垃圾邮件陷阱规避,bounce handling,throttling,订阅管理等等。哪些好的批量电子邮件提供。
如果你知道你在做什么,拥有你的系统和NS记录的完全管理权限以及编写代码的时间,那么,是的,你可以建立相同的服务 - 但它不仅仅是将蚂蚁与大象进行比较 - 它的比较扳手到橙色。
答案 1 :(得分:0)
您无法使用此功能一次性发送批量电子邮件。 例如,如果您要向100k用户发送电子邮件,则必须迭代电子邮件ID。是的,您可以使用cc但是如果您有一个模板,那么每个电子邮件中的用户名将被添加如下:
Dear User abc
您必须逐个发送。除非您使用多个进程,否则无法在邮件功能中实现此突发邮件拍摄功能。
MailQueue
很好但我已经使用过它,它会做同样的事情,将电子邮件保存到数据库中并将电子邮件出列并逐个发送。
我们也有swift mailer
。
同样,这是您的要求。如果您不需要发送数百个时间敏感的通知,那么您就不需要这些工具了。
答案 2 :(得分:0)
将mail()与商业服务进行比较就像将ant与大象进行比较。 mail()对于来自服务器的一些快速通知是好的,如果你不需要大量的自定义,但是如果你想做一些像电子邮件活动,你将不得不做很多额外的服务器设置,并在你的邮件周围建立大量的自定义功能()函数。商业服务有利于活动,但不适用于通知(浪费金钱)。尝试使用一些开源php lib来发送电子邮件,这将为你排序很多自定义功能。
答案 3 :(得分:0)
首先,根据专业,我是全球ESP“socket.io docs”的一部分,它可以帮助品牌最多向客户提供关键业务触发和交易电子邮件。
但是,我在这里回答这个问题的意图不是推广ESP而不是PHP邮件功能。我将与您分享我们在Pepipost实验室研究过程中观察到的一些事实。
PHP邮件功能只是生成电子邮件的基本方法/核心功能。但是,它无法提供大规模的电子邮件,也无法提供更好的可传递性,这些都是任何企业的关键。
随着更复杂的技术和算法的发展,ISP(Gmail,雅虎,Outlook等)和垃圾邮件过滤器变得越来越智能化。在到达邮箱之前,每封电子邮件都会通过所有这些过滤器,其中扫描内容,信誉和其他参数。因此,拥有良好的知名IP和信封域非常重要。
一旦电子邮件到达收件人服务器,它将获得送达,限制或退回。如果是Bounce,Spam Complaint,Unsubscribe,收件人服务器将与您的服务器进行通信,在这种情况下,您需要正确处理所有这些,否则您的域名和IP的声誉将会下降。
如果出现限制,则需要另一组复杂的交付逻辑。
简而言之,如果您计划发送几百封电子邮件,那么PHP邮件功能可能可以使用,但为了进一步扩展,使用一个好的ESP(电子邮件服务提供商)非常重要。
答案 4 :(得分:-1)
Mail()函数在* nix系统上运行非常简单,它只执行本地命令sendmail
来发送消息。它确实有如下缺点:
我认为你应该使用像PHPMailer或Swift Mailer这样的开源库,因为它除了简单地发送邮件之外还有更多功能。 这些库的一些优点:
PS。我不使用像Sendgrid,Mandrill这样的商业服务,因此无法比较。