欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

PHP字符串编码转换

程序员文章站 2022-06-30 12:54:49
...

在Web开发中要经常进行字符串编码的转换,稍有不慎就会造成乱码。因此可以说,编码问题是个大问题。经过一番搜索,找到一段进行字符串编码转换的代码,然后进行了一下简单的包装,使用起来更加方便了。

<?php
function phpcharset($data, $to)
{
    if (is_array($data)) {
        foreach ($data as $key => $val) {
            $data[$key] = phpcharset($val, $to);
        }
    } else {
        $encode_array = array(
            'ASCII',
            'UTF-8',
            'GBK',
            'GB2312',
            'BIG5'
        );
        $encoded      = mb_detect_encoding($data, $encode_array);
        $to           = strtoupper($to);
        if ($encoded != $to) {
            $data = mb_convert_encoding($data, $to, $encoded);
        }
    }
    return $data;
}

function toUTF8($data)
{
    return phpcharset($data, 'UTF-8');
}

function toGBK($data)
{
    return phpcharset($data, 'GBK');
}

function toASCII($data)
{
    return phpcharset($data, 'ASCII');
}

function toGB2312($data)
{
    return phpcharset($data, 'GB2312');
}

function toBIG5($data)
{
    return phpcharset($data, 'BIG5');
}
?>