【发布时间】:2014-03-25 10:11:17
【问题描述】:
我有一个奇怪的问题。我正在使用 Richard Heyes 的 rmail 类来发送邮件。此类始终按预期工作。现在我遇到了一个奇怪的问题与特殊字符。直到现在,特殊字符都不是问题。
我有:
$this->mailEncoding = 'UTF-8';
$email->setHeadCharset($this->mailEncoding);
$email->setTextCharset($this->mailEncoding);
$email->setHTMLCharset($this->mailEncoding);
在这种情况下,主题是一个字符串,如:
...ont été acceptée(s)
主题被用作邮件主题(顶部),然后再次出现在内容中
这是苹果邮件中收到的邮件的图像。
你看内容没问题。在主题中,été 也可以,但接受者不是。
现在当我进入时:
...ont été acceptétée(s)
我明白了(它有效):
我尝试了几种组合。例如 "à" 有效。好像只有"ée"有问题
- 环境是TYPO3
- 字符串位于 locallang_db.xml 中,为 CDATA
- 我通过 pi_getLL 获得它们
原始:
00 : 56 6f 74 72 65 2f 76 6f 73 20 6d 61 6e 69 66 65 [Votre/vos manife]
10 : 73 74 61 74 69 6f 6e 73 28 73 29 20 6f 6e 74 20 [stations(s) ont ]
20 : c3 a9 74 c3 a9 20 61 63 63 65 70 74 c3 a9 65 28 [..t.. accept..e(]
30 : 73 29 2e [s).
【问题讨论】:
-
你应该给我们一个可重现的测试用例。就我所见,呈现消息的程序(Apple Mail)看到 两个字符(双替换字符 �)而不是一个(acceptée(s )),因此在链中的某处必须有一个程序,它没有为输入提供编码权,并且使用单字节编码(可能是代码页,所以可能涉及一些 Windows)。请问您将邮件保存在哪里以及如何检索它们?
-
对不起,几乎不可能给你一个可重现的测试用例。见上文,我更新了问题(TYPO3)。 两个字符的东西我没注意到。奇怪的。窗户几乎是不可能的。这是带有 MAMP 的 iMac :-)
-
你能把
locallang_db.xml放在要点上吗? -
另外,查看原始电子邮件会很有帮助 - 我不知道 Apple Mail,但所有邮件客户端都有一种“显示源”功能,可以显示原始邮件,两个标题和身体
标签: php encoding utf-8 special-characters typo3