php - iconv() : Detected an incomplete multibyte character in input string

标签 php utf-8

您好,我已经看到这个问题是围绕陷阱提出的,但是到目前为止,当我尝试使用它们时,我看到的所有示例都没有帮助我。我收到错误 “iconv():在输入字符串中检测到一个不完整的多字节字符”,在某些输入上。同时使用以下功能时。您对如何消除此错误消息有任何想法吗?我正在尝试将混合编码的输入字符串转换为 UTF8。

    function ConvertToUTF8($text){
         return iconv(mb_detect_encoding($text, mb_detect_order(), false), "UTF-8//IGNORE", $text);
    }

编辑:大家好,环顾四周后,以下内容对我们有用:

 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;
}

您可以改进它,但它修复了我们的错误。

最佳答案

好的,这就是对我们有用的东西。

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;
}

关于php - iconv() : Detected an incomplete multibyte character in input string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26092388/

相关文章:

python - Python IDLE 中的 "Unsupported characters in input"

java - 在java中的二进制流中使用真正的UTF-8

javascript - 在 JavaScript 中正确转义输入值中的字符

php - CodeIgniter 应用程序中的 URL 安全性

php - Yii2 扩展开发测试环境指南

php - 媒体查询在 WordPress 中不起作用

php - 您可以将函数存储在 PHP 数组中吗?

java - 如何在 Java 中生成非 UTF-8 字符串/字符以进行测试?

php - 添加 2 年至今

python-2.7 - 我怎样才能得到一个随机的 unicode 字符串