一尘不染

PHP电子邮件编码?

php

发送电子邮件时,我遇到一些外来字符的麻烦。有人可以建议我该怎么做吗?我怀疑问题可能是三件事之一。

  1. html页面编码不正确。(这会影响表单中的POST数据吗?)
  2. 邮件功能没有任何编码。因此,该程序不知道如何读取它。(最有可能的)
  3. 文件本身没有正确的编码,因此出现了问题。(可能不太可能)

还有其他可能的原因吗?

我试图将它们一一淘汰,直到发现问题。我认为选项2是最可能的原因。如何为邮件功能添加适当的通用编码?

这就是我目前所拥有的。

$mail_sent = mail($client_email, $title, $message, "From: {$visitor_email}");

我目前知道该表格不会发送波兰语或瑞典语字符。

如果有人可以指出任何其他可能的原因并告诉我发送电子邮件需要使用哪种编码,我将不胜感激。

非常感谢。


阅读 326

收藏
2020-05-29

共1个答案

一尘不染

据我所知,PHP不支持UTF-8作为其字符串的默认编码。您需要使用相关的编码/处理功能来实现所需的编码。

还要Content- Type:text/html;charset=utf-8在电子邮件标题中添加,以便电子邮件客户端可以正确显示字符(或替换为您选择的编码)。

2020-05-29