c3b6 (utf-8) echo bin2hex(utf8_decode("ö")); ->-6ren">
gpt4 book ai didi

PHP内部编码

转载 作者:可可西里 更新时间:2023-11-01 13:43:18 24 4
gpt4 key购买 nike

根据 bin2hex,我的 PHP 在内部使用 UTF-8:

echo bin2hex("ö"); -> c3b6 (utf-8)
echo bin2hex(utf8_decode("ö")); -> f6 (ISO-8859)

但是 mb_internal_encoding() 和 iconv_get_encoding() 都说它是 ISO-8859-1。

echo mb_internal_encoding(); -> ISO-8859-1
var_dump(iconv_get_encoding()); -> ["input_encoding"]=> string(10) "ISO-8859-1" ["output_encoding"]=> string(10) "ISO-8859-1" ["internal_encoding"]=> string(10) "ISO-8859-1"

UTF-8 似乎显然是它使用的那个,但为什么它仍然显示 ISO-8859-1?

最佳答案

这一点也不奇怪。您的第一个检查是引号之间的内容。我假设您已使用 UTF-8保存 文件,这意味着您的字符串中有两个字节。这并不意味着内部编码是 UTF-8,只是字符串中有这两个字节。

关于PHP内部编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12710842/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com