我有json数据。json 文件中有“西里尔文”字符串,如下所示:
\u0418\u0432\u0430\u043D\u043E\u0432 \u0418.
当我解码 json 并将这些数据放入数据库表中时,我得到了字符串
Иванов И.
在一个解码网站上,我输入了这个字符串并且非常好(我需要的那个)
Иванов И.
而且这个网站告诉我它是从 CP1252 转换为 UTF-8 的。所以我尝试使用手动解码后从json转换数据
mb_convert_encoding ( $string, "UTF-8","windows-1252");
mb_convert_encoding ( $string, "UTF-8","CP1252");
和
iconv("windows-1252","UTF-8",$string);
iconv("CP1252","UTF-8",$string);
这些函数中的任何一个都使数据库表中的字符串看起来像
Øòðýþò ÃËœ.
或者
Øòðýþò Ø.
两者都没有在上述网站上正确解码。所以问题是,我如何转换这个字符串?
更新:使用了这个 sql 请求:
ALTER DATABASE logenterprise
CHARACTER SET utf8
尝试了上面写的相同的东西 - 结果是一样的。也试过这个以防万一:
alter table mytable convert to CHARACTER SET utf8 COLLATE utf8_unicode_ci;