GbK和UTF-8编码的转换是一个非常恶心的事情

2023-11-08    分类: 网站建设

原文链接:

GbK和UTF-8编码之间的转换是一件很恶心的事情。例如,在 pHp 中编码转换 php编码转换 php,它根本不支持 GbK 编码。可以支持编码转换的库函数有两个,通常能想到的函数就是函数,用起来也很爽:

iconv('GbK', 'UTF-8//IGNORE', '芒果小站'); // 将字符串由 GbK 编码转换为 UTF-8 编码

但只能解决编码提前已知的情况。如果字符串的编码未知,则需要先检测其编码。在这种情况下,您可以使用扩展库:

mb_detect_encoding('芒果小站');

但是有一个缺陷,经常有不准确的判断。也许这可以解决:

// 使用 iconv 转换并判断是否等值,效率不高
function is_utf8 ($str) {
    if ($str === iconv('UTF-8', 'UTF-8//IGNORE', $str)) {
        return 'UTF-8';
    }
}
// 多种编码的情况
function detect_encoding ($str) {
    foreach (array('GbK', 'UTF-8') as $v) {
        if ($str === iconv($v, $v . '//IGNORE', $str)) {
            return $v;
        }
    }
}

通过上述方法得到字符串编码信息后,可以使用 或 进行编码转换。

本文题目:GbK和UTF-8编码的转换是一个非常恶心的事情
新闻来源:https://www.cdcxhl.com/news22/293172.html

成都网站建设公司_创新互联,为您提供手机网站建设定制开发关键词优化网站导航品牌网站设计全网营销推广

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都seo排名网站优化