我正在尝试将存储在utf8_unicode_ci
归类中的数据库列转换为印地文字符。
例如: दà¥à¤ƒà¤–काअधिकार-测验1
这不是印地语显示,我什至在<meta charset="utf-8">
标记后添加了<head>
。但仍然显示相同。
在我以前的网站中,它工作正常,但是当我将数据导入到新网站中时,字符未按预期显示。
然后经过研究,我发现了一些如下的PHP函数
echo iconv('UTF-8', 'ISO-8859-1', $utf8);
echo "<br>";
echo mb_convert_encoding($utf8, 'ISO-8859-1', 'UTF-8');
echo "<br>";
iconv
显示错误iconv(): Detected an illegal character in input string
,并且
mb_convert_encoding
输出?? ? ??- Quiz 1
上述字符串的预期结果为=
दुःख का अधिकार- Quiz 1
答案
在获得所有帮助之后,我使用此方法将旧数据库字符集更改为UTF-8
UPDATE quiz_question SET question_desc = CONVERT( CONVERT( CONVERT( question_desc USING latin1 ) USING BINARY ) USING UTF8 )