从php发送邮件-字符集编码
作者:互联网
我正在从php脚本发送自动邮件,用希腊语编写.
我试过了:
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=utf-8\r\n";
$headers .= "From: example@mail.com\r\n";
$headers .= "Reply-To: example@mail.com\r\n";
mail($to, $subject,$body, $headers) ;
正文和主题使用希腊语. Hotmail正在阅读主题,但不是正文,而gmail可以很好地阅读主题.我用iso-8859-7(包含希腊字符)替换了utf-8,并且可以正常工作.
1)知道为什么它不能与utf-8一起使用吗?
2)gmail也在邮件中写入我的服务器.如何防止这种情况发生?
解决方法:
所有包含主题的电子邮件标题都必须为纯ASCII,您不能直接在电子邮件标题中使用UTF-8或其他编码.某些邮件服务可能能够检测其他编码并执行正确的操作,但是从技术上讲这是无效的.使用MIME编码对标头进行编码,请参阅How to use special characters in recipients name when using PHP’s mail function.
标签:character-encoding,utf-8,email,php 来源: https://codeday.me/bug/20191202/2086506.html