1

如果我从浏览器中的 PHP 脚本运行它:

echo imap_utf8('X-My-Custom-Header: =?UTF-8?B?RXVnZW4gQmFiacSH?=');

我明白了:

X-My-Custom-Header: Eugen BabicÌ

但是,如果我通过 PHP 交互式 shell 执行此操作,它会正确返回:

php > echo imap_utf8('X-My-Custom-Header: =?UTF-8?B?RXVnZW4gQmFiacSH?=');
X-My-Custom-Header: Eugen Babić

我在这里使用一些解码功能在互联网上设置了一个脚本:http ://cameronsflash.com/misc/test.php ,因为您可以看到它们都没有正确解码字符串(但在交互式外壳中)。

为什么它在浏览器中有所不同,我该如何解决?

编辑:由于某种原因,第二个示例中没有显示 c 上的重音,但它在控制台中。

4

1 回答 1

0

这是您做错的事情:您的 HTML(由 PHP 生成)不是 UTF-8 编码的。

将此添加到您的<head>

标签:

<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
于 2013-06-20T05:41:17.740 回答