使用开源phpmailer发送邮件

网上也有几篇教程,不过我是为了给自己的服务可以发送邮件给自己用,所以只是用phpmailer的base功能,不需要使用smtp。

先去phpmailer官网下载,然后把里面的class.phpmailer.php放到自己的class库中。

我自己再定义一个mail.function.php的函数,里面new一个phpmailer的对象。

好吧,之前我是自己用PHP原生mail()函数写的邮件功能,但因为一直没看懂该如何对邮件正文进行重编码,导致邮件正文在部分收件工具中总是存在各种乱码情况。

需要用到发邮件的时候,只需要postmail($body);即可,当然,记得把mail.function.php给include进去。

分层解耦,理想很美好,现实很残酷

自从实习以来,不是第一次有这种想法了。
今天弄一个简单的发邮件功能,使用PHP自带的mail()函数实现,基本就照着php.net上面的例子来写,结果…
情况好的,邮件被丢垃圾箱,情况差的,连垃圾箱里面都看不到邮件。
邮件标题和正文等,皆出现各种不同情况的文字乱码,现在标题的乱码通过base64来encode一下解决了,但是正文依旧没找到好方法,有的邮件客户端能正常显示中文,有的却不能。
来看看php.net的文档对mail()函数是怎么说的:

Note:

The following RFCs may be useful: » RFC 1896, » RFC 2045, » RFC 2046, » RFC 2047, » RFC 2048, » RFC 2049, and » RFC 2822.

为了发个邮件,我还得去翻阅RFC文档,要命啊。这些事情不是应该底层已经给我做好了吗,唉~
明天再解决不了,就真得去翻阅一下RFC文档了。
PS:吐槽一下新浪企业邮箱,怎么给域名设置了白名单,都还扔到垃圾箱,实在无语~~~~