PHP的mail函式中如果標題(SUBJECT)有中文字,收信者會看到亂碼。
下面是解決標題中文字亂碼的範例:
$To = "user@example.com"; $From = "my@example.com"; $message ="EMAIL 郵件的內容"; $headers = "MIME-Version: 1.0 \nContent-type: text/html; charset=UTF-8 \n"; $headers .= "From: {$From}\r\nReply-To: {$From}\r\nX-Mailer: PHP/".phpversion(). "\n"; $subject = "這是帶有中文字的標題"; $subject = "=?UTF-8?B?".base64_encode($subject )."?="; $bool = mail($To, $subject, $message, $headers);
其中第7行這裡的 $subject,需要指定編碼和base64 encode處理。
原文 2012-03-24 03:50:01