中文字符编码适用于 hotmail,但不适用于 gmail 或 yahoo

发布于 2024-12-14 10:22:51 字数 504 浏览 0 评论 0原文

我设法通过 IMAP 使用 hotmail 检索电子邮件的中文正文,但使用 gmail 或 yahoo 则不起作用。我不知道为什么:

$mbox = imap_open ("{localhost:995/pop3/ssl/novalidate-cert}", "info@*******.com", "********");

$email="[email protected]";

$num_mensaje = imap_search($mbox,"FROM $email");

$body =  imap_fetchbody($mbox,$num_mensaje[0],"1");

$str =  mb_convert_encoding($body,"UTF-8","big5,EUC-CN");

i managed to retrieve the email's body in chinese characters with hotmail via IMAP but with gmail or yahoo it doens't work. I don't know why:

$mbox = imap_open ("{localhost:995/pop3/ssl/novalidate-cert}", "info@*******.com", "********");

$email="[email protected]";

$num_mensaje = imap_search($mbox,"FROM $email");

$body =  imap_fetchbody($mbox,$num_mensaje[0],"1");

$str =  mb_convert_encoding($body,"UTF-8","big5,EUC-CN");

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

花落人断肠 2024-12-21 10:22:51

查看电子邮件中 ​​Content-Transfer-Encoding 标头的内容。它会告诉您电子邮件正文的格式,这将决定您必须如何对其进行解码。

您需要支持的传输编码包括:

处理完传输编码后,您就可以应用mb_convert_encoding

Look at the contents of the Content-Transfer-Encoding header in the email message. It will tell you what format the body of the email is in, which will dictate how you must decode it.

Transfer encodings you will need to support include:

Once you have handled the transfer encoding, THEN you can apply mb_convert_encoding.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文