發送UTF-8電子郵件
發送電子郵件時,正確處理字元編碼以避免出現亂碼至關重要。一個常見問題是非英語字符的編碼,例如各種語言中使用的非英語字符的編碼。
在提供的場景中,寄件者在發送電子郵件後面臨非英語字元顯示為不可讀文字的問題。儘管添加了 Content-Type 和 Charset 標頭,問題仍然存在。
要修正此問題,關鍵是包含標頭 Content-Type: text/html;訊息正文中的 charset=UTF-8。此標頭通知電子郵件用戶端該郵件為 HTML 格式並使用 UTF-8 字元編碼,使它們能夠正確顯示所有字元。
使用本機 mail() 函數,可以將此標頭指定為第四個參數:
mail($to, $subject, $message, $headers);
其中 $headers 是包含 Content-Type 標頭的字串。
在使用 PEAR 的情況下Mail::factory() 函式庫:
$smtp = Mail::factory('smtp', $params); $mail = $smtp->send($to, $headers, $body);
這裡,$headers 是一個包含 Content-Type 標頭的陣列。
透過新增適當的 Content-Type 標頭,電子郵件將使用正確的字元編碼傳送,確保非英文字元在收件者的郵件用戶端中正確顯示。
以上是如何使用 PHP 的 `mail()` 和 PEAR Mail 確保 UTF-8 電子郵件中的字元編碼正確?的詳細內容。更多資訊請關注PHP中文網其他相關文章!