【发布时间】:2015-05-19 13:33:36
【问题描述】:
我认为我做的事情是正确的:
- 我正在指定 PHPMailer 对象的字符集:
$mail->CharSet = "UTF-8"; - 邮件正文和 php 脚本的字符集也是 UTF-8
但是电子邮件到达时会出现这种错误(单词被带有“?”符号的黑色四分之一分隔:
- опреСелени
- оÑ �ибка определения
- click to see the screenshot of example email
更新 1
在电子邮件的来源中发现了一些中国字形(但不是西里尔符号)
【问题讨论】:
-
如果您查看收到的消息的来源,这些损坏的字符是否与换行符一致?如果你稍微改变一下内容,损坏的字符会改变吗?您确定文本在传递给消息之前没有损坏吗?
-
这些字符没有损坏(我在发送电子邮件的同时输出到页面)。并且这个位置没有换行符。换行处理正确。
-
你没有回答我问的问题。查看收到消息的来源 - 我不是在谈论您的原始文本或您的网络输出,它们可能完全不同。
-
哇。我查看了 gmail 中的邮件来源,我很惊讶:来源西里尔符号就像中国字形。看看这些截图:normal mail body fragment 和 mail source
-
看起来不太好。您能否将其缩减为显示问题的最小示例并在您的问题中发布实际数据,然后我将有一些工作要做。
标签: php character-encoding phpmailer cyrillic