不知何故,UTF-8中有两种不同的字符。 correct one U + 20AC和latin-1 supplement U + 0080。
使用bin2hex
我得到了十六进制c280
而不是正确的e282ac
。由于第一个没有正确显示,我想转换它。
我非常不能使用utf8_decode()
或utf8_encode()
。我尝试了iconv('Windows-1252', 'UTF-8', $x)
,但这给了我"€"
,因为在Windows-1252€中80
。
对此有什么正确的转换器?
答案 0 :(得分:2)
如果我将utf8_decode转换回Windows-1252并使用iconv再次转换为utf8,它看起来确实有效:
iconv('Windows-1252', 'UTF-8', utf8_decode($x));
我猜这个字符串最初是Windows-1252,并且被转换为utf8_encode,这对大多数字符都不起作用。