zoukankan      html  css  js  c++  java
  • php 字符编码转换

    <?php
    /**
    * Created by PhpStorm.
    * User: yxp
    * Date: 2016/11/8
    * Time: 16:47
    */

    /**
    * 将非GBK字符集的编码转为GBK
    *
    * @param mixed $mixed 源数据
    *
    * @return mixed GBK格式数据
    */
    function charsetToGBK($mixed)
    {
    if (is_array($mixed)) {
    foreach ($mixed as $k => $v) {
    if (is_array($v)) {
    $mixed[$k] = charsetToGBK($v);
    } else {
    $encode = mb_detect_encoding($v, array('ASCII', 'UTF-8', 'GB2312', 'GBK', 'BIG5'));
    if ($encode == 'UTF-8') {
    $mixed[$k] = iconv('UTF-8', 'GBK', $v);
    }
    }
    }
    } else {
    $encode = mb_detect_encoding($mixed, array('ASCII', 'UTF-8', 'GB2312', 'GBK', 'BIG5'));
    //var_dump($encode);
    if ($encode == 'UTF-8') {
    $mixed = iconv('UTF-8', 'GBK', $mixed);
    }
    }
    return $mixed;
    }


    /**
    * 将非UTF-8字符集的编码转为UTF-8
    *
    * @param mixed $mixed 源数据
    *
    * @return mixed utf-8格式数据
    */
    function charsetToUTF8($mixed)
    {
    if (is_array($mixed)) {
    foreach ($mixed as $k => $v) {
    if (is_array($v)) {
    $mixed[$k] = charsetToUTF8($v);
    } else {
    $encode = mb_detect_encoding($v, array('ASCII', 'UTF-8', 'GB2312', 'GBK', 'BIG5'));
    if ($encode == 'EUC-CN') {
    $mixed[$k] = iconv('GBK', 'UTF-8', $v);
    }
    }
    }
    } else {
    $encode = mb_detect_encoding($mixed, array('ASCII', 'UTF-8', 'GB2312', 'GBK', 'BIG5'));
    if ($encode == 'EUC-CN') {
    $mixed = iconv('GBK', 'UTF-8', $mixed);
    }
    }
    return $mixed;
    }
  • 相关阅读:
    起点中文网小说爬取-etree,xpath,os
    拉勾网爬虫--待改正
    破解有道词典翻译-版本二
    pycharm错误:11001
    自动化selenium 测试之道(一)
    valgrind 详细说明
    sar命令使用详解
    Linux CPU实时监控mpstat命令详解
    Linux IO实时监控iostat命令详解
    RPM安装命令总结
  • 原文地址:https://www.cnblogs.com/kobigood/p/6043646.html
Copyright © 2011-2022 走看看