[精讚] [會員登入]
2666

[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

你可能感興趣的文章

[PHP] UTF8中取出字串中特定的字數 要將字串,例如資料庫取出的TEXT,取出特定的字數

[PHP] 2個程式的觀念 整理2個PHP的程式觀念,參考參考。

[PHP] 解析二進位圖片 使用php來解析png圖片,把資料寫在16進位格式

[CodeIgniter 3] COOKIE的使用 PHP CodeIgniter 3 中COOKIE的使用超簡單

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

PHP 產生連續的日期 要用PHP產生連續的日期,連續月份

隨機好文

為什麼要買長達二十年的保單? 為什麼要買長達二十年的保單?找一個可以說服我買二十年保單的理由。

談借錢 人借錢時手心向上頭向下,人還錢時手心向下頭向上

[Freebsd] 使用 ADSL 撥接上網 Freebsd上要使用 ADSL 撥接上網,該如何設定?

安裝SPHINX支援中文 新版本的 sphinx 和舊版不同,網路上很多範例和教學是不能用的。此文是安裝和設定方法分享

PHP for sphinx 函式庫安裝 PECL/sphinx PHP>= 5.2.2 已經能原生支援 sphinx,可是預設的沒有裝,我們得自己裝才能用