php字符编码转码

 PHP基础  2021-02-08  admin  69  93

php字符编码转码

/**
 * php字符编码转码
 * @param mixed $content
 * @param string $from
 * @param string $to
 * @return mixed
 * @author http://centphp.com/
 */
function charset($content, $from = 'gbk', $to = 'utf-8')
{
    $from = strtoupper($from) == 'UTF8' ? 'utf-8' : $from;
    $to = strtoupper($to) == 'UTF8' ? 'utf-8' : $to;
    if (strtoupper($from) === strtoupper($to) || empty($content)) {
        //如果编码相同则不转换
        return $content;
    }
    if (function_exists('mb_convert_encoding')) {
        if (is_array($content)) {
            $content = var_export($content, true);
            $content = mb_convert_encoding($content, $to, $from);
            eval("\$content = $content;");
            return $content;
        } else {
            return mb_convert_encoding($content, $to, $from);
        }
    } elseif (function_exists('iconv')) {
        if (is_array($content)) {
            $content = var_export($content, true);
            $content = iconv($from, $to, $content);
            eval("\$content = $content;");
            return $content;
        } else {
            return iconv($from, $to, $content);
        }
    } else {
        return $content;
    }
}

使用示例:

//$content = '测试123456';
$content = ['测试123456', '我爱学习'];
print_r(charset($content, 'utf-8', 'gbk'));


转载必须注明出处:

php字符编码转码 —— centhp.com

相关推荐


Saber, 基于swoole 的PHP异步协程HTTP客户端

HTTP军刀(呆毛王),Swoole人性化组件库之PHP高性能HTTP客户端, 基于Swoole原生协程, 支持多种风格操作, 底层提供高性能解决方案, 让开发者专注于功能开发, 从传统同步阻塞且配置繁琐的Curl中解放.基于Swoole协程Client开发人性化使用风格, ajax.js/axios.js/requests.py用户福音, 同时支持PSR风格操作浏览器级别完备的Cookie管理机