当前位置:Gxlcms > PHP教程 > PHPmail()函数乱码的具体解决方法_PHP教程

PHPmail()函数乱码的具体解决方法_PHP教程

时间:2021-07-01 10:21:17 帮助过:13人阅读

我们在使用

一般这种问题出现的原因是 mail() 函数的 header 参数里少了 Content-type: text/html; charset=utf-8,或者 charset 不是utf-8。很多国外的PHP程序一开始开发的时候没有吧中文考虑进去,所以中文使用的时候就会出现PHP mail()函数乱码。

先用函数base64_encode() 使用 MIME base64 对数据进行编码
标题字符串前加编码类型例如: =?UTF-8?B?
当然如果是gb2312的话就 =?GB2312?B?
标题字符串后加:?=

PHP mail()函数乱码的处理办法举例如下

  1. $to = 'xinple@example.com';
  2. $subject = "=?UTF-8?B?".
    base64_encode('邮件标题')."?=";
  3. $headers = 'MIME-Version: 1.0' . "rn";
  4. $headers .= 'Content-type:
    text/html; charset=utf-8'
    . "rn";
  5. // Additional headers
  6. $headers .= 'To: Xinple <
    < a href="mailto:xinple@example.com">
    xinple@example.com>'
    . "rn";
  7. $headers .= 'From: Admin <

    admin@example.com>'
    . "rn";
  8. $headers .= 'Reply-To: Xinple <xinple@example>' . "rn";
  9. mail($to, $subject, $message, $headers);

以上就是PHP mail()函数乱码的具体处理办法,希望对有需要的朋友有所帮助。


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446193.htmlTechArticle我们在使用 一般这种问题出现的原因是 mail() 函数的 header 参数里少了 Content-type: text/html; charset=utf-8,或者 charset 不是utf-8。很多国外的PHP程...

人气教程排行