很多站长朋友们都不太清楚php数组编码转换,今天小编就来给大家整理php数组编码转换,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 浅析PHP中的字符串编码转换(自动识别原编码) 2、 php函数应用! 3、 PHP如何把数组里的中文Unicode转换成Utf-8编码? 浅析PHP中的字符串编码转换(自动识别原编码)复制代码
代码如下:
/**
*
对数据进行编码转换
*
@param
array/string
$data
数组
*
@param
string
$output
转换后的编码
*/
function
array_iconv($data,$output
=
'utf-8')
{
$encode_arr
=
array('UTF-8','ASCII','GBK','GB2312','BIG5','JIS','eucjp-win','sjis-win','EUC-JP');
$encoded
=
mb_detect_encoding($data,
$encode_arr);//自动判断编码
if
(!is_array($data))
{
return
mb_convert_encoding($data,
$output,
$encoded);
}
else
{
foreach
($data
as
$key=>$val)
{
if(is_array($val))
{
$data[$key]
=
array_iconv($val,
$input,
$output);
}
else
{
$data[$key]
=
mb_convert_encoding($data,
$output,
$encoded);
}
}
return
$data;
}
}
php函数应用!这段代码的作用是
转换$array的编码格式(php数组编码转换函数),就是把输入其中的$array从GBK的编码格式转换成UTF-8的格式
用法:自定义一个数组
例如$array
=
array("name"=>"hero","age"=22);
然后把这个数组当做变量,赋给这个函数encodeUTF8($array)
,在其他地方调用即可
PHP如何把数组里的中文Unicode转换成Utf-8编码?很明显你截的图是是JSON数据,如果是数组应二维数组的括号应该是[]而不是{}。
所以转换应该使用json_decode。比如对象名为$list,则:$list = json_decode($list, true);
出现中文Unicode的问题是,存储数据转成json时第二个参数使用错误,包含中文而不转义的需要使用JSON_UNESCAPED_UNICODE;这样存到数据库才是中文。如:$list = json_encode($list, JSON_UNESCAPED_UNICODE);
关于php数组编码转换的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php数组编码转换 php数组转成 对象属性的详细内容...