2013-03-01 47 views
1

我使用phpmailer庫以PHP形式發送電子郵件(採用HTML格式)。PC和iPhone上的PHP電子郵件內容不同

我的電子郵件在PC和iPhone上正確顯示,沒有口音或其他問題。

但我注意到,在內容的關注:

事實上,我的電子郵件的正文中包含字符「= DA」。在PC上,我看到「= da」,但在iPhone上,這3個字符被替換爲「」。

該問題僅出現在我的郵件正文中。如果我在電子郵件主題中顯示「= da」,我會在PC和iPhone上正確顯示。

注意:我的代碼文件使用UTF-8編碼,並且在發送郵件之前對其進行了utf8_decode(我記得我沒有任何擔憂或其他口音)。

預先感謝您的幫助

+0

你是否設置郵件MIME類型允許UTF8字符等? – Dave 2013-03-01 13:50:22

+0

我正在使用phpmailer庫。 我對我的電子郵件內容使用utf8_decode,因爲默認情況下,字符集是ISO-8859-1。 – yeste64 2013-03-01 14:06:48

+0

以及電腦顯然使用不同的內容字符集多數民衆贊成其爲什麼它的顯示= da而不是Ú,所以它似乎將其解碼爲一個asci代碼無法識別的字體或指定爲mailbody的字符集。 iPhone必須忽略它,只是顯示相關的字符。嘗試覆蓋phpmailer的默認字符集。 – Dave 2013-03-01 14:14:21

回答

3

=xx,用兩個十六進制數字在使用「引用Printable」編碼的電子郵件也是常見的。

由於您使用的是UTF-8,因此您不會使用引用的可打印編碼,但它聽起來像iPhone可能正在進行轉換。這可能是iPhone電子郵件客戶端中的一個錯誤。

我的建議是切換到引用的打印模式。在phpMailer,你會這樣做:

$mail->Encoding = 'quoted-printable'; 
+0

它工作正常!謝謝 :) – yeste64 2013-03-01 14:26:30