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

自从实习以来,不是第一次有这种想法了。
今天弄一个简单的发邮件功能,使用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:吐槽一下新浪企业邮箱,怎么给域名设置了白名单,都还扔到垃圾箱,实在无语~~~~