我应该使用PHPMailer还是SwiftMailer?

11

可能是重复的问题:
PhpMailer vs. Swiftmailer?

我一直使用PHP内置的mail()函数,并且它总是能够正常工作并完成我想要的工作。

现在有些人可能会想“为什么修复那些没有问题的东西?”。

我回答这些问题的原因是:

  • 如果有人问起,我从来没有使用过框架或者它们是被称为库之类的东西。

  • 我想开始使用其中一个,并查看了文档,两者都很容易使用。

  • 随着我将新功能实现到我的站点上,我的站点越来越依赖于发送电子邮件等,这意味着PHP的mail()函数已经无法胜任了。

  • 在处理高级功能(如附件、HTML和文本版本等)时,它们将更易于使用;否则使用PHP的mail()函数将变得困难或不可能。

  • 我从未使用SMTP,但我已经研究了它,并且我可以看到我可以在我的托管包中与SSL一起使用它。经过大量阅读后,似乎SMTP不仅更可靠、更广泛地使用,而且使用任何一个框架都会提高性能、可靠性,并更加安全,因为它使用带有SSL的SMTP。

现在我不确定使用SMTP的其他好处是什么,也许有人可以给我更多关于它的好处的原因? 我正在寻找有关SMTP好处的更多信息。

我查看了两个文档,了解了它们提供的功能,搜索了PHPMailer vs SwiftMailer,但没有找到任何说明哪个更好的信息。

有人有使用过其中任意一个吗?

它们中有一个拥有更多的优势吗?

你会说其中一个比另一个更好吗?

我确实看到很多人说PHPMailer是一个已死项目,但这些帖子都相对较旧。从PHPMailer的网站来看,该项目似乎已经在进行开发了一段时间。

感谢您对PHPMailer和/或SwiftMailer提供的任何信息。希望我能决定选择其中之一,因为目前我没有理由选择其中任何一个。

3个回答

21

我绝对推荐Swiftmailer。

  • 它是基于 PHP 5 组件编写的;而 PHPMailer 是基于 PHP 4 的。

  • 它有一个更清晰的网站,提供更好的示例。

  • 它有更好的文档。

  • 它只有一个版本在互联网上流传,不像 PHPMailer 那样至少有两个。


3
也许我理解有误,但是PHPMailer有适用于4和适用于5/6的版本。我下载了适用于5/6的版本。 - PHPLOVER
3
自行判断吧,这里有两个类的基本用法示例... PHPMailer Vs SwiftMailer ...不难知道我的选择是哪一个 {也就是SwiftMailer} =P - AgelessEssence
很高兴看到Pekka的积极评论,我也会选择Swiftmailer。 - Marco Demaio
1
我完全改变了主意,PHPMailer更好,详情请参见https://dev59.com/N3VC5IYBdhLWcg3wZwXj#15074414。 - Marco Demaio
双手举起来为 @Pekka :) 欢呼! - CappY

5
我在我的项目中使用了PHPMailer,对它没有任何抱怨。虽然我没有使用过Swiftmailer,但两者在使用和有用性方面似乎都差不多,只是在实现细节上有所不同。当你深入了解它们时,它们都只是友好的接口,以隐藏SMTP电子邮件的细节。
选择适合您风格的那个并使用它。

2
B - 谢谢你,这帮助我做出了决定。有趣的是,我正在尝试使用PHPMailer,因为我想先试用一下PHPMailer,必须说设置非常简单,我自己在几分钟内创建了一个函数,可以在我的网站上随时使用,而且非常容易使用 :) 我想我会选择PHPMailer。谢谢! - PHPLOVER

-2

我唯一需要离开内置邮件功能的时候是当我需要从真实的“Gmail”帐户发送电子邮件时(客户在垃圾邮件文件夹中收到了我们应用程序发送的邮件)。

在这种情况下,我使用了PEAR的Mail扩展,它非常容易使用:

http://pear.php.net/package/Mail


1
内置函数会为每封电子邮件打开一个SMTP连接。 - Alex

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