0

我正在尝试处理使用 curl 获得的数据,但我遇到了编码问题 - 我无法找到正确的方法来处理它。

这是我得到的文本(十六进制) - '6B 64 6F 20 6D C3 A1' 应该评估为字符串 'kdo má' 但不是它,而是评估为 'kdo m??' (实际上,最后两个字符不是问号,而是http://www.fileformat.info/info/unicode/char/c3/index.htmhttp://www.fileformat.info/info/unicode/char /a1/index.htm )

我不明白为什么有些字符是 8 位而变音符号是 16 位,PHP 应该如何知道哪个是哪个,但无论如何,我应该如何解码它?

4

1 回答 1

0

不明白为什么有些字符是 8 位而变音符号是 16 位

很可能是因为它是 UTF8 甚至是 UTF16。默认情况下,PHP 假定一个字符 == 一个字节

PHP应该如何知道哪个是哪个,但无论如何,我应该如何解码它?

不,你必须告诉它。检查 mbstring:http://php.net/manual/de/book.mbstring.php或重新编码: http: //php.net/manual/en/book.recode.php

于 2013-09-16T21:53:47.740 回答