php mail正文乱码的解决办法:1、将读取的数据设置好编码方式为“UTF-8”;2、在发邮件的时候也指定编码方式为“UTF-8”即可。

本文操作环境:Windows7系统、PHP7.1版,DELL G3电脑
如何解决php mail正文乱码问题?
PHP mail 中文乱码的解决方式
主要是编码的问题:
立即学习“PHP免费学习笔记(深入)”;
解决办法就是:
读取的数据设置好编码方式; 发邮件的时候也指定编码方式;
先用函数base64_encode() 使用 MIME base64 对数据进行编码
标题字符串前加编码类型例如: =?UTF-8?B?
当然如果是gb2312的话就 =?GB2312?B?
标题字符串后加:?=
-----------我的供配置参考---------
1)
//if "email" is filled out, send email
{
//send email
$email = $_POST["from"] ;
$mailto = $_POST["mailto"];
$subject = "=?UTF-8?B?" . base64_encode($_POST["subject"]) . "?=";
$message = $_POST["message"] ;
$header = 'MIME-Version: 1.0' . "\r\n"
. "Content-type: text/html; charset=utf-8". "\r\n"
. "From: <$email>"."\r\n";
//echo "mailto:$mailto
", "Subject: $subject
", "message:$message
", "From: $email
" ;
mail("$mailto", "$subject", $message, "$header" );
echo "
Your mail has been sent !
Thank you for using our Mail system ...
We shall go to main page in 3 seconds
";
}
else{
echo "Welcome to Qunero-php Mail system
";
echo '';
}
?>
推荐学习:《PHP视频教程》










