下面我来给各位分享一个php中数组编码转换例子,这里用到了iconv函数,但对于数组我们要加以eval操作才行,下面看例子。
场景说明/问题描述:
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+mysql 数据库方式运行的强大网上商店系统,执行效率高速度快,支持多语言,模板和代码分离,轻松创建属于自己的个性化用户界面 v3.5更新: 1).进一步静态化了活动商品. 2).提供了一些重要UFT-8转换文件 3).修复了除了网银在线支付其它支付显示错误的问题. 4).修改了LOGO广告管理,增加LOGO链接后主页LOGO路径错误的问题 5).修改了公告无法发布的问题,可能是打压
0

再看下数据库:

可以看到编码已经正常且入库成功
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号