[精讚] [會員登入]
2623

[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>7.3] switch中的 Did you mean to use "continue 2"? 除錯 這近更新 PHP到7.3版以後,出現這樣的錯:targeting switch is equivalent to "break". Did you mean to use "continue 2"?解決方法

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

[PHP] codeignitor4+ smarty4 這篇整合 php 的framework codeignitor4 + smarty4。

[CodeIgniter 3] 修改或插入資料時遇到函數的處理 CI3 中要新增或修改的資料中如果有 now()這類的函數,要怎麼處理?

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

[PHP] CodeIgniter 3+pure+smarty安裝及環境設置2/2 PHP framework CodeIgniter 3+ pure CSS +smarty Template Engine的整合#2

隨機好文

[HP DL380G7] 生效啟動第3,4片網卡/開啟或關閉內建的網卡 HP DL380G7 預設第3,4片網卡裝完系統後找不到,難道是壞了?要怎麼辦?

SELinux 常用指令和檔案 在Redhat系列中,Centos5以後加入了selinux,他並沒有這麼可怕,不必每次看到Selinux ,就想把他

[札記] 2016.7~12月札記 札記,只是札記

[CodeIgniter 3] 資料庫的使用方法整理1/2 --Select的使用 [CodeIgniter 3] 資料庫的使用方法整理:Select的使用

對物品的感情 這個議題很奇怪,可是大部分的人都會有,物品是死的,壞了就淘汰,出新的就被替換。為何會有情感?