php – Joomla UTF-8编码在打开邮件时失败

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – Joomla UTF-8编码在打开邮件时失败脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我对编码有一个奇怪的问题,描述如下:

ù现在在邮件主题显示为ù.电子邮件通过PHP邮件功能发送.

查看邮箱中的电子邮件时,它显示正确.然而,当任何人打开电子邮件时,ù突然变为ù.

Uw contact met Meeùs

应该

Uw contact met Meeùs

我已经使用过编码.

$emailsubject包含上述电子邮件主题.

$subject=$emailsubject;
$subject=$emailsubject;
$email_message=new email_message_class;
$email_message->SetencodedEmailHeader("To",$to_address,$to_name);
$email_message->SetEncodedEmailHeader("From",$from_address,$from_name);
$email_message->SetEncodedEmailHeader("Reply-to",$reply_address,$reply_name);
$email_message->SetHeader("Sender",$from_address);
$email_message->SetEncodedHeader("Subject",$subject,"UTF-8");

在localhost中它正常工作,但在Web服务器中它无法正常工作.在webserver中,认情况下编码也设置为utf-8.

我做错了什么?
提前致谢.

你的代码是正确的绝对没有错误,但其他东西没有编码.因为我需要消息头和消息来告诉你究竟发生了什么?我还没有关于您是以纯文本还是html格式发送电子邮件的信息.但通常有两个问题:

缺少Mime版本

错误显示字符的原因是开发人员忘记将消息描述为MIME版本.如果消息缺少internet邮件标准所要求的“Mime-Version”标头,Webmail将完全忽略“charset”标头,除非它已经在UTF-8字符集中,否则将消息加入.

显示具有特殊字符的主题

如果您想使用utf-8编码显示主题,则必须将主题编码为:

//Setting the Language as Japan
mb_language("ja");

//Converting the string into Japan Encoding
$subject = mb_convert_encoding($subject,"ISO-2022-JP","AUTO");

//Now convert the string to MIME Header tyPE
$subject = mb_encode_mimeheader($subject);

如果上述内容无法解决问题,请求您发布电子邮件的RAW标题,因为它有助于更​​好地解决问题.

脚本宝典总结

以上是脚本宝典为你收集整理的php – Joomla UTF-8编码在打开邮件时失败全部内容,希望文章能够帮你解决php – Joomla UTF-8编码在打开邮件时失败所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。