php编码转换:编码转换php的实现方法来源: 发布时间:星期三, 2008年9月10日 浏览:112次 评论:0
这段代码是ThinkPHP框架中的,感觉很常用,所以单独拎出来,大家共同学习一下。
functionauto_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’)){ returnmb_convert_encoding($fContents,$to,$from); }elseif(function_exists(’iconv’)){ returniconv($from,$to,$fContents); }else{ exit(’转换失败’); return$fContents; } } elseif(is_array($fContents)){ foreach($fContentsas$key=>$val){ $_key=auto_charset($key,$from,$to); $fContents[$_key]=auto_charset($val,$from,$to); if($key!=$_key){ unset($fContents[$key]); [Page] } } return$fContents; } elseif(is_object($fContents)){ $vars=get_object_vars($fContents); foreach($varsas$key=>$val){ $fContents->$key=auto_charset($val,$from,$to); } return$fContents; } else{ return$fContents; } } 0
相关文章
读者评论
发表评论 |