PHPMailer发送邮件时中文出现乱码的解决办法
2019-09-02 阅读 : 次
问题出现场景
做了日报的功能,当然是使用邮件了,发现邮件里面的中文出现乱码。
问题解决参考文档
https://secure.php.net/manual/zh/function.mail.php
问题解决办法
1. 指定字符集 $mail->CharSet= 'UTF-8';
2. 制定字符集之后 其实还是有乱码的,比如subject
这时候需要使用base64转换一下 (见参考文档)
/**
* 转换格式解决邮件发送乱码的问题
* @param string $content 中文
* @return string
*/
private function changeFormatForMail($content)
{
return "=?UTF-8?B?".base64_encode($content)."?=";
}
作者:cominglately
做了日报的功能,当然是使用邮件了,发现邮件里面的中文出现乱码。
问题解决参考文档
https://secure.php.net/manual/zh/function.mail.php
问题解决办法
1. 指定字符集 $mail->CharSet= 'UTF-8';
2. 制定字符集之后 其实还是有乱码的,比如subject
这时候需要使用base64转换一下 (见参考文档)
/**
* 转换格式解决邮件发送乱码的问题
* @param string $content 中文
* @return string
*/
private function changeFormatForMail($content)
{
return "=?UTF-8?B?".base64_encode($content)."?=";
}
作者:cominglately
本文地址:https://www.helloaliyun.com/tutorial/174.html