rinald_未来往事

php数组编码转换函数

PHP
场景说明/问题描述:
Ajax提交页面编码为gb2312,数据库编码为utf8,在不更改页面及数据库编码的情况下插入数据。

自定义函数:
  1. function array_iconv($in_charset,$out_charset,$arr){      
  2.         return eval('return '.iconv($in_charset,$out_charset,var_export($arr,true).';'));      
  3. }    

函数说明:
var_export设置第二个参数为true,返回数组原型字符串,将字符串转换为utf-8编码,之后再用eval来执行返回。

范例:
  1. $postdata = $_POST;  
  2. $data = array_iconv('gb2312','utf-8',$postdata)  
  3. print_r($data);  

借助Firefox firebug组件我们可以看到:
点击在新窗口中浏览此图片

再看下数据库:
点击在新窗口中浏览此图片
可以看到编码已经正常且入库成功。
原文作者:rinald
原文地址:http://fity.cn/post/448.html
互联网技术更新较快,本站很多文章具有实效性,我会及时更新原文,但转载的文章无法通知更新。为了不给读者造成困惑或误导,请您在转载时保留此出处信息,尊重别人也是尊重自己。

发表评论

必填

选填

选填

必填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。