当前位置:编程学习 > php >>

编码转换php

这段代码是ThinkPHP框架中的,感觉很常用,所以单独拎出来,大家共同学习一下。
 
function auto_charset($fContents,$from='''',$to='''')
{
    if( strtoupper($from) === strtoupper($to) || empty($fContents) || (is_scalar($fContents) && !is_string($fContents)) ){
        //如果编码相同或者非字符串标量则不转换
        return $fContents;
    }
    $from   =  strtoupper($from)==''UTF8''? ''utf-8'':$from;
    $to       =  strtoupper($to)==''UTF8''? ''utf-8'':$to;
    if(is_string($fContents) ) {
                if(function_exists(''mb_convert_encoding'')){
            return mb_convert_encoding ($fContents, $to, $from);
        }elseif(function_exists(''iconv'')){
            return iconv($from,$to,$fContents);
        }else{
            exit(''转换失败'');
            return $fContents;
        }
    }
    elseif(is_array($fContents)){
        foreach ( $fContents as $key => $val ) {
                        $_key =         auto_charset($key,$from,$to);
            $fContents[$_key] = auto_charset($val,$from,$to);
                        if($key != $_key ) {
                           &
补充:Php教程,Php常用代码 
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,