json_decode转码无效

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 15:50   2119   0

由于最近从原来常用的utf-8的字符转到了gbk;所以,在用json_decode的时候遇到了返回为空;

经查找发现是json_decode和json_encode只针对utf8字符串有效;

于是用到了iconv()函数;

下面是我写的代码案例以及解释

$arr = array(
    'a'    => 'hello',
    'b'    => '你好'
);
foreach($arr as &$v){
    //iconv()函数是指: 字符串按要求的字符编码来转换;
    //string iconv ( string $in_charset , string $out_charset , string $str );
    //iconv函数是把$str从$in_charset字符输出$_out_charset字符;
    //成功返回;失败返回false;
    $v = iconv('GBK','UTF-8',$v);

}


$json = json_encode($arr); //json函数只支持utf-8的字符串
//var_dump($json);die;
$jsonArr = json_decode($json,true);
//print_r($jsonArr);

转载于:https://www.cnblogs.com/bigwang1126/p/9586009.html

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP