数组需要转码,原本需要这样的方式:

unserialize(iconv('gbk','utf-8',serialize($array)));

 得到的结果是空白

借助var_export函数,最终函数如下:

function array_iconv($in_charset,$out_charset,$arr){
       return eval('return '.iconv($in_charset,$out_charset,var_export($arr,true).';'));
}

 原理很简单 var_export设置第二个参数为true,返回数组原型字符串,将字符串转换为utf-8编码,之后再用eval来执行返回(类似匿名函数?),至此完美解决问题。

转自:http://sizeed.blog.163.com/blog/static/965254512011613576930/

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-01-05
  • 2022-12-23
  • 2022-12-23
  • 2021-12-19
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-12-11
  • 2022-12-23
  • 2021-06-24
  • 2022-12-23
相关资源
相似解决方案