问各位老大一个简单的有关问题,怎么转换数组的字符集
时间:2021-07-01 10:21:17
帮助过:22人阅读
问各位老大一个简单的问题, 如何转换数组的字符集?
对于字符串, 有mb_convert_encoding()函数.
可是对于一个数组呢? 难道要循环着用这个函数吗:
array_map(
function($value) use($from, $to) {return mb_convert_encoding($value, $from, $to);},
$input
);
这样会产生效率问题, 如果一个大数据, 就弱爆了.
能不能一次处理,有这样的内置函数吗?或者其他的解决方案?
分享到:
------解决方案--------------------array_walk、array_walk_recursive
但也只是把循环弄到内部去了
但总还是要比你递归的循环来的快
你光 array_map 是不行的!要是多维数组就无能为力了
也可以用迭代器
其实字符集只是在输入输出时才会有转换的要求
输入(比如读数据库),mysql 会给你需要的字符集,不需要自己转换
输出 可透过 ob_start 完成
mb_internal_encoding("gbk"); // 假定你的程序是gbk的
mb_http_output("utf-8"); // 要
输出成 utf-8 的
ob_start('mb_output_handler'); // 只需这样就可以了其后输出的内容就全部变成 utf-8 的了