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 ) {                                 unset($fContents[$key]);                         }         }         return $fContents;     }     elseif(is_object($fContents)) {                 $vars = get_object_vars($fContents);         foreach($vars as $key=>$val) {             $fContents->$key = auto_charset($val,$from,$to);         }         return $fContents;     }     else{         return $fContents;     } }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值