当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP使用mail函数发送邮件标题乱码问题

PHP
php 正确解码javascript中通过escape编码后的字符
在PHP中养成7个面向对象的好习惯
PHP函数常用用法小结
Zend framework处理一个http请求的流程分析
用js进行url编码后用php反解以及用php实现js的escape功能函数总结
php cli 方式 在crotab中运行解决
PHPWind 发帖回帖Api PHP版打包下载
Linux下将excel数据导入到mssql数据库中的方法
php不用内置函数对数组排序的两个算法代码
用php实现的下载css文件中的图片的代码
php 获取当前访问的url文件名的方法小结
php date与gmdate的获取日期的区别
php下把数组保存为文件格式的实例应用
劣质的PHP代码简化
php 生成随机验证码图片代码
php+mysql事务rollback&commit示例
php 处理上百万条的数据库如何提高处理查询速度
两个开源的Php输出Excel文件类
PHP Memcached应用实现代码
Memcache 在PHP中的使用技巧

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 341 ::
收藏到网摘: n/a

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

解决方法:

先用函数base64_encode() — 使用 MIME base64 对数据进行编码

标题字符串前加编码类型例如: =?UTF-8?B?

标题字符串后加:?=

邮件header说明Content-type — 防止邮件正文也乱码

举例:

以下为引用的内容:

 $to         = '[email protected]';
$subject  = "=?UTF-8?B?".base64_encode('邮件标题')."?=";
$headers  = 'MIME-Version: 1.0' . "rn";
$headers .= 'Content-type: text/html; charset=utf-8' . "rn";
// Additional headers
$headers .= 'To: Xinple <[email protected]>' . "rn";
$headers .= 'From: Admin <[email protected]>' . "rn";
$headers .= 'Reply-To: Xinple <xinple@example>' . "rn";
mail($to, $subject, $message, $headers);