嗨,我已经在陷阱周围看到了这个问题,但到目前为止,当我尝试时,我见过的所有例子都没有帮助过我.我收到错误"iconv():在输入字符串中检测到不完整的多字节字符",在某些输入上.何时一起使用以下功能.您对如何使此错误消息消失有任何想法吗?我试图将具有混合编码的输入字符串转换为UTF8.
function ConvertToUTF8($text){
return iconv(mb_detect_encoding($text, mb_detect_order(), false), "UTF-8//IGNORE", $text);
}
Run Code Online (Sandbox Code Playgroud)
编辑:大家好好看了下面为我们工作的以下内容:
function ConvertToUTF8($text){
$encoding = mb_detect_encoding($text, mb_detect_order(), false);
if($encoding == "UTF-8")
{
$text = mb_convert_encoding($text, 'UTF-8', 'UTF-8');
}
$out = iconv(mb_detect_encoding($text, mb_detect_order(), false), "UTF-8//IGNORE", $text);
return $out;
}
Run Code Online (Sandbox Code Playgroud)
您可能能够改进它,但它修复了我们的错误.
好的,这就是对我们有用的东西.
function ConvertToUTF8($text){
$encoding = mb_detect_encoding($text, mb_detect_order(), false);
if($encoding == "UTF-8")
{
$text = mb_convert_encoding($text, 'UTF-8', 'UTF-8');
}
$out = iconv(mb_detect_encoding($text, mb_detect_order(), false), "UTF-8//IGNORE", $text);
return $out;
}
Run Code Online (Sandbox Code Playgroud)