[精讚] [會員登入]
2649

[PHP] 處理mail 函式的標題中文字亂碼

PHP的mail函式若標題有中文字得先處理過,否則收信者會看到亂碼

分享此文連結 //n.sfs.tw/10962

分享連結 [PHP] 處理mail 函式的標題中文字亂碼 @新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 00:34:30 最後編修
2017-04-07 11:01:55 By 張○○
 

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 

END

你可能感興趣的文章

設定Google analytics API #3 -- 查詢範例 讓你的網站能夠存取你的Google analytics上面的資料

[PHP] 陣列新增資料及整理 在php陣列加入項目和重新整理陣列的方法

[CodeIgniter3] 解決無法上傳特定檔案(.sb2)的問題 上傳時出現The filetype you are attempting to upload is not allowed,要怎麼解決?

[PHP] 判斷文字、數字、文字加數字的方法 幾個PHP數字和文字操作上的小眉角:判斷文字、數字、文字加數字的方法

[PHP8] 使用autoload autoload+ namespace +use 到了php7之後,namespace和use越來越重要,此篇整理autoload和namespace、use的結合使用。

[PHP] 判斷程式是從CLI、本地網路或是網際網路端執行的方法 PHP利用IP判斷程式是從CLI、本地網路或是網際網路端執行的方法

隨機好文

[jQuery] textarea 的取值和給值 HTML 的 TEXTAREA 標籤若要用 jquery 取值,不能使用 .text() 或 .html() ,使用 .

UTF-8 BOM (Byte Order Mark) 的問題 在 Michael Kaplan 那看到 Every character has a story #4: U+feff

[Win7] 燒錄 iso 檔 在Windows7 中內建燒錄程式,可以直接把檔案拉到光碟機裡,再執行燒錄。

正則表達式:Email名稱防止連續輸入點(.)及下底線(_) Email的名稱中要允許特殊符號,但又不允許連續出現的正則表達式

[Bootstrap] Datepicker使用/Bootstrap日期選日期選擇器的使用 Bootstrap日期選日期選擇器的使用