【问题标题】:ZF2 Mail UTF-8 & Outlook expressZF2 Mail UTF-8 和 Outlook Express
【发布时间】:2014-08-24 17:45:46
【问题描述】:

我正在使用 ZF2 发送 UTF-8 编码的电子邮件:

$message->setEncoding('UTF-8');

有了这样的测试内容:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <title>Test</title>
    </head>
    <body bgcolor="#FFFFFF">
        ĄŚĆÓłąóźćżźęĄŚĆÓłąóźćżźęĄŚĆÓłąóźćżźę
    </body>
</html>

现代浏览器或电子邮件客户端中的一切都是正确的。问题是旧的 OutlookExpress 无法识别这一点。信息与 ISO 一起显示。 我应该怎么做才能让它正确阅读?

【问题讨论】:

    标签: php email zend-framework2 outlook


    【解决方案1】:

    我找到了解决方案。发送 html 时,该部分有自己的编码。在那里设置 UTF-8 可以使 OE 正确读取消息。

    $html = new Mime\Part($text);
    $html->type = Mime\Mime::TYPE_HTML;
    $html->charset = 'utf-8';
    

    【讨论】:

      【解决方案2】:

      我猜 OutlookExpress 能够显示 UTF8。但是我遇到了一种情况,客户端设置强制 ISO 编码而不是从电子邮件中检测。所以检查outlookExpress的设置。

      我要做的另一件事是使用 UTF8 编码从 gmail 发送电子邮件并在此 OutlookExpress 中阅读。 - 是否正确显示?如果是,请查看邮件的来源并检查与您的不同之处。如果不是,那么问题可能出在 OutlookExpress 设置中。

      【讨论】:

      • 谢谢。我找到了解决方案。我只能在服务器端修改东西。无法修改客户端设置。
      猜你喜欢
      • 1970-01-01
      • 2011-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多