The solution to the garbled title of the email sent by php: first use the function base64_encode to encode the data; then send the email, so that the title of the Chinese email sent will not be garbled.
Problem description:
When PHPMailer sends emails, the Chinese characters are garbled. Originally, my system had English content. Later, the requirements changed and I needed to add the title in the title. Chinese has been added to the system, but when using Android's built-in email tool to receive it, garbled characters appear, while using QQ mailbox to view it is indeed normal.
(Learning video recommendation: java course)
Solution:
First use the function base64_encode() - use MIME base64 to encode the data
Add the encoding type before the title string. For example: =?UTF-8?B?
Add after the title string: ?=
//例如: $subject = "=?UTF-8?B?".base64_encode($subject)."?="; //utf-8 //将上面一句添加到代码之中,这样,发送的中文邮件标题就不是乱码了。 $subject = "=?GB2312?B?".base64_encode($subject)."?="; //gb2312
Related recommendations: php Training
The above is the detailed content of What to do if the title of the email sent by php is garbled. For more information, please follow other related articles on the PHP Chinese website!