PHP and Unicode or UTF-8?


PHP and Unicode or UTF-8?

我的PHP应用程序输出JSON,其中编码了特殊字符,例如字符串"Brøndum"表示为"Br''u00f8ndum"。

你能告诉我这是哪种编码吗,以及我如何从"Br''u00f8ndum"返回到"Brøndum"吗。

我尝试过utf8_encode/decode,但它们没有按预期工作。

谢谢!

这是标准的JSON unicode转义。

您可以使用JSON解析器返回到实际的字符。在PHP的情况下为CCD_ 1。

您可以首先使用JSON_UNESCAPED_Unicode标志告诉PHP不要转义Unicode字符。

json_encode("Brøndum", JSON_UNESCAPED_UNICODE)

mb_detect_encoding是您的函数。你只要把字符串传给它,它就会检测到编码。您还可以向它发送一个具有可能性的数组(因为像"hello"这样的常规字符串可能被编码在不同的编码中

echo mb_detect_encoding("Br'u00f8ndum");