我必须在db中保存俄语产品描述。因此,我使用下面的代码将该字符串转换为utf 8,
$data = 'Это русский';
$cData = iconv(mb_detect_encoding($data, mb_detect_order(), true), "UTF-8", $data);
工作正常。但我需要恢复数据,我不知道如何再次解码它。我试过下面的一个,但它不起作用,
$des = $object->getDescription("ru");
$enc = mb_detect_encoding($des, "UTF-8,ISO-8859-1");
echo iconv($enc, "UTF-8", $des);
我尝试了一下,但没有工作
utf8_decode ( $data );
任何人都可以告诉我如何解码吗?
更新
我在下面尝试编码,
$data = 'Это русский';
$cData = htmlentities($data, ENT_COMPAT, 'UTF-8');
它工作正常,但如何解码?
我试过下面的一个,但它不起作用..
$des = $object->getDescription("ru");
echo $cData = htmlentities($des, ENT_COMPAT, 'UTF-8');
答案 0 :(得分:2)
编码似乎是Windows-1251。 使用以下代码编码到UFT-8
$html_utf8 = mb_convert_encoding($html, "utf-8", "windows-1251");
使用:
解码回Windows-1251$html_1251 = mb_convert_encoding($html, "windows-1251", "utf-8");
答案 1 :(得分:0)
答案 2 :(得分:0)
您的原始编码是什么?
在您的解码示例中,您不会转换回原始编码,而是转换为UTF-8。试试这个:
$original_encoding = '...'; //put your original encoding here
$description = $object->getDescription("ru");
echo iconv('UTF-8', $original_encoding, $description);