php数组编码转换函数的示例

场景说明/问题描述:

Ajax提交页面编码为gb2312,数据库编码为utf8,在不更改页面及数据库编码的情况下插入数据。

自定义函数:

 代码如下 复制代码
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来执行返回。

范例:

 代码如下 复制代码
 $postdata = $_POST;
$data = array_iconv('gb2312','utf-8',$postdata)
print_r($data);

借助Firefox firebug组件我们可以看到:

php数组编码转换函数的示例

再看下数据库:

 

php数组编码转换函数的示例

可以看到编码已经正常且入库成功

 
posted @ 2014-03-15 09:20  divor  阅读(1719)  评论(0编辑  收藏  举报