使用mail函数发送邮件标题乱码问题

    技术2022-05-11  82

    PHP程序使用mail()函数发送邮件的时候,标题中文的话会出现乱码。

    解决方法:先用函数base64_encode() — 使用 MIME base64 对数据进行编码标题字符串前加编码类型例如: =?UTF-8?B?标题字符串后加:?=邮件header说明Content-type — 防止邮件正文也乱码

    举例:

    $to         = 'xinple@example.com'; $subject  = "=?UTF-8?B?".base64_encode('邮件标题')."?="; $headers  = 'MIME-Version: 1.0' . "/r/n"; $headers .= 'Content-type: text/html; charset=utf-8' . "/r/n"; // Additional headers $headers .= 'To: Xinple <xinple@example.com>' . "/r/n"; $headers .= 'From: Admin <admin@example.com>' . "/r/n"; $headers .= 'Reply-To: Xinple <xinple@example>' . "/r/n"; mail($to, $subject, $message, $headers);  source url:  http://www.gougou.com/2DQESIT7#34F06169

    最新回复(0)