使用php中的Mail函数发送邮件,尽管邮件头加上了Utf-8编码的设置,但某种条件下,用户用邮件客户端软件,比如outlook express收到邮件之后,邮件的主题还有可能是乱码。解决此问题的方法如下:

mail函数的用法一般是:  mail($email,$subject,$contents,$headers);
在这一行之前肯定是有代码定义了$subject。

解决方法就是在定义$subject之后,在mail($email,$subject,$contents,$headers); 之前,增加一句
$subject  = “=?UTF-8?B?”.base64_encode($subject).”?=”;

之后再发送,就可以解决邮件主题乱码的问题!