php – 如何使用UTF-8编码发送电子邮件?
我继承了一个脚本,它以三种语言发送一些内容(所有内容都是相同的 – 重复)然而当收到内容字符时,我认为是UTF-8问题. 我是否正确我需要做的是将charset部分更改为utf-8,还是需要更改像7bit部分一样? 你可以看到我插入一个UTF-8参考的位置(尚未测试) 有一些东西在这里http://bitprison.net/php_mail_utf-8_subject_and_message似乎参考基本编码,但我不确定我是否需要这里?
我在这里看了另一篇文章的例子.
解决方法: 您使用的是Content-Type:text / plain; charset = UTF-8告诉邮件阅读器这样的邮件部分使用UTF-8,这很好,但是…… $textContent变量包含什么?这是重要的一点.根据Content-Transfer-Encoding:7bit,它是一个7位编码,所以它不能是原始的UTF-8.但是,您没有使用任何通常用于电子邮件的7位编码.否则,将存在(例如)Content-Transfer-Encoding:quoted-printable标头. 总而言之,您需要: >拥有包含有效UTF-8的源字符串. 您也可以按原样发送原始UTF-8并设置Content-Transfer-Encoding:8bit但我不推荐它.您只需发送非常长的行就可能违反SMTP标准.此外,您不知道这将通过什么样的遗留程序. 电子邮件比看起来更难,这就是为什么迟早你最终使用第三方库:@L_301_2@,Swift Mailer,PEAR Mail …… (编辑:北几岛) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |