//可转码 :字符串 和数组
//默认转化为 utf - 8
//转化utf - 8 to gbk 带参数 如:auto_charset($fContents, $to = 'GBK')
function auto_charset($fContents, $to = 'utf-8'){
if($to == ''){
$to = 'utf-8';
}
if(is_string($fContents)){
$from = mb_detect_encoding($fContents, array('UTF-8', 'GBK','GB2312', 'BIG5','EUC-CN','CP936'));//顺序很重要
if(in_array(strtoupper($from),array('ASCII','GB2312', 'GBK', 'BIG5','EUC-CN','CP936'),true)){
$from='GBK';
}
if(strtoupper($to) == strtoupper($from)){
return $fContents;
}
if(function_exists('mb_convert_encoding')){
【PHP 转码函数auto_charset:可对字符串和数组转码】return mb_convert_encoding($fContents, $to, $from);
}elseif(function_exists('iconv')){
return iconv($from, $to, $fContents);
}else{
return $fContents;
}
}elseif(is_array($fContents)){
foreach($fContents as $key => $val){
$_key = auto_charset($key, $to);
$fContents[$_key] = auto_charset($val, $to);
if($key != $_key){
unset($fContents[$key]);
}
}
return $fContents;
}else{
return $fContents;
}
}
推荐阅读
- column函数是什么意思?
- 高数上sgnx是什么函数?
- 复变函数与积分变换有联系吗?
- 二次函数对称轴公式是什么?
- 顶点式二次函数表达式是怎样的?
- lnx的原函数是什么?
- 数学期望e?x和e?x^2的公式?E?x和E?x^2的公式矩母函数
- 函数运行时在内存中是什么样子?
- 数学公式初中必背公式函数?数学公式初中必背公式字母
- 反函数与原函数的关系是什么?