php-如何将非utf-8字符串转换为utf-8
我有一个返回波斯语字符串的php页面,这是我现在的内容:php-如何将非utf-8字符串转换为utf-8,php,mysql,encoding,utf-8,character-encoding,Php,Mysql,Encoding,Utf 8,Character Encoding,我有一个返回波斯语字符串的php页面,这是我现在的内容: Ùروشگاه تعطیل Ù…ÛŒ باشد . ساعت کاری Ùروشگاه 8 الی 22 روزهای شنبه تا پنج شنبه 正如您所看到的,编码错误并且不可读,我需要将其转换为utf-8编码。 我从数据库返回数据,数据库中表和单元格的编码是utf8_persian_ci,它在phpmyadmin中
Ùروشگاه تعطیل Ù…ÛŒ باشد .
ساعت کاری Ùروشگاه 8 الی 22
روزهای شنبه تا پنج شنبه
正如您所看到的,编码错误并且不可读,我需要将其转换为utf-8编码。
我从数据库返回数据,数据库中表和单元格的编码是utf8_persian_ci,它在phpmyadmin中显示货币
如何将此不可读字符串转换为utf-8编码并使其可读?
我尝试过utf8编码和下面的代码,但其中没有一个有效:
echo iconv(mb_detect_encoding($string, mb_detect_order(), true), "UTF-8", $string);
我怎样才能解决这个问题 您可以尝试此功能:
public function content_iconv($data, $to = 'utf-8') {
$encode_array = array('UTF-8','ASCII','GBK','GB2312','BIG5','JIS','eucjp-win','sjis-win','EUC-JP');
$encoded = mb_detect_encoding($data, $encode_array);
$to = strtoupper($to);
if($encoded != $to) {
$data = mb_convert_encoding($data, 'utf-8', $encoded);
}
return $data;
}
不要使用任何转换子例程。修复程序 对于某些阿拉伯语文本,输出为“Mojibake”。见对此类问题的讨论 有关如何修复数据(除非选择重新加载),请参阅