PHP使用iconv函数遍历数组转换字符集

本文介绍了一种使用PHP实现的字符编码转换方法,适用于字符串及多维数组的数据类型。该方法通过递归调用iconv函数来完成不同字符集间的转换,并提供了一个实用的例子函数array_iconv,帮助开发者轻松处理复杂的编码问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

**
* 字符串/二维数组/多维数组编码转换
* @param string $in_charset 
* @param string $out_charset 
* @param mixed $data 
**

function array_iconv($data, $in_charset='GBK', $out_charset='UTF-8'){
if (!is_array($data)){
$output = iconv($in_charset, $out_charset, $data);
}elseif(count($data)===count($data, 1)){//判断是否是二维数组
foreach($data as $key => $value){
$output[$key] = iconv($in_charset, $out_charset, $value);
}
}else{
eval_r('$output = '.iconv($in_charset, $out_charset, var_export($data, TRUE)).';');
}
return $output;
}

 
function arrIconv($arr,$fromCharset,$toCharset){
      eval_r('$resArr = '.iconv($fromCharset,$toCharset."//IGNORE",var_export($arr,true)).' ;');
      return $resArr;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值