gpt4 book ai didi

php: 从 cp1251 转换为 utf8

转载 作者:可可西里 更新时间:2023-10-31 22:56:47 25 4
gpt4 key购买 nike

我在将字符串从 cp1251 转换为 utf8 时遇到问题...

我需要从数据库中获取一些名称,这些名称在 cp1251 中(我不是创建该数据库的人,所以我无法编辑它,但我确定这些名称是 cp1251).. .

数据库中的名称是这样的 - "Р?РС,ернеС,РІ С†РёС„СЂР°С ..."我正在使用 iconv 函数将它转换为 utf8,如下所示:

iconv("UTF-8", "CP1251//IGNORE", $name)

我得到的结果是 - “�?нтернет в цифрах”(俄语),但前两个符号不正确...应该是 "Интернет в цифрах"...

所以我要做的最后一件事是以某种方式更改这两个符号“�?”到俄语字母“И”……我真的不知道该怎么做……我试过使用 preg_replace,但它不起作用……或者我没有正确使用它。

对于俄语字母,我很抱歉,如果不显示它们,真的很难解释我需要什么。

最佳答案

第一个字母不正确,因为存储 И 的 UTF-8 编码所需的一个字节(准确地说是 0x98)没有在 CP1251 中使用。 .如果数据库用问号替换了 98 字节,您必须在使用 iconv 之前将其改回:

$name = str_replace("\xD0\x3F", "\xD0\x98", $name);
echo iconv("UTF-8", "CP1251//IGNORE", $name);

关于php: 从 cp1251 转换为 utf8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13508429/

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