您好,登錄后才能下訂單哦!
小編給大家分享一下php郵件標題亂碼的解決方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
php郵件標題亂碼的解決辦法:首先使用【base64_encode】函數對數據進行編碼;然后在標題字符串前加編碼類型為【=?UTF-8?B?】;最后將文件保存成相應的編碼格式即可。
PHP發送郵件標題亂碼的解決
遇到問題:PHPMailer發送郵件時中文亂碼,本來我的系統都是英文內容的,后來需求變化需要在標題中添加中文,但是在使用安卓自帶郵件工具收取是出現亂碼,而使用QQ郵箱查看確實正常的。
解決方法:
先用函數base64_encode() — 使用 MIME base64 對數據進行編碼
標題字符串前加編碼類型例如: =?UTF-8?B?
標題字符串后加:?=
//例如: $subject = "=?UTF-8?B?".base64_encode($subject)."?="; //utf-8 //將上面一句添加到代碼之中,這樣,發送的中文郵件標題就不是亂碼了。 $subject = "=?GB2312?B?".base64_encode($subject)."?="; //gb2312
網上還有資料說輸入使用PHPMaile可以設置CharSet屬性,由于我的問題使用上面的方法就可以解決,所以沒有嘗試這種方法,但是也記錄下。
解決的方法很簡單,在代碼中加上一個屬性:
$mail->CharSet = "utf-8"; //設置字符集編碼
如果是gb2312的編碼,則是:
$mail->CharSet = "GB2312";
然后將文件保存成相應的編碼格式即可。
以上是php郵件標題亂碼的解決方法的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。