Php json decode return null

php json_decode will return a null answer when it
get ‘\uxxxx’ character since it only supports UTF-8 which was
declared by official website.

So how could we solve this question when we
want to json_decode(Chinese)?

Here provide two way to solve this:

  1. $pp = '{"\u8499\u9a6c\u7279\u9057\u4e66\uff08\u8bd5\u8bfb\uff09": "https://read.douban.com/ebook/256340/", "\u6587\u5b66\u56de\u5fc6\u5f55\uff08\u8bd5\u8bfb\uff09": "https://read.douban.com/ebook/451767/", "\u6587\u5b66\u56de\u5fc6\u5f55\uff1a\u4e2d\u4e16\u7eaa\u2014\u5341\u4e03\u4e16\u7eaa\u4e4b\u5377": "https://read.douban.com/ebook/9837704/", "\u6587\u5b66\u56de\u5fc6\u5f55\uff1a\u53e4\u4ee3\u4e4b\u5377": "https://read.douban.com/ebook/9837472/", "\u6587\u5b66\u56de\u5fc6\u5f55\uff1a\u5341\u516b\u2014\u5341\u4e5d\u4e16\u7eaa\u4e4b\u5377": "https://read.douban.com/ebook/9841737/"}';
            echo var_dump(json_decode($pp)); 

    As you can see, we change the \" to "

  2. And this is the second way, I love it.

$pp = '{\"\u8499\u9a6c\u7279\u9057\u4e66\uff08\u8bd5\u8bfb\uff09\": \"https://read.douban.com/ebook/256340/\", \"\u6587\u5b66\u56de\u5fc6\u5f55\uff08\u8bd5\u8bfb\uff09\": \"https://read.douban.com/ebook/451767/\", \"\u6587\u5b66\u56de\u5fc6\u5f55\uff1a\u4e2d\u4e16\u7eaa\u2014\u5341\u4e03\u4e16\u7eaa\u4e4b\u5377\": \"https://read.douban.com/ebook/9837704/\", \"\u6587\u5b66\u56de\u5fc6\u5f55\uff1a\u53e4\u4ee3\u4e4b\u5377\": \"https://read.douban.com/ebook/9837472/\", \"\u6587\u5b66\u56de\u5fc6\u5f55\uff1a\u5341\u516b\u2014\u5341\u4e5d\u4e16\u7eaa\u4e4b\u5377\": \"https://read.douban.com/ebook/9841737/\"}';

$python = '"'.$pp.'"';
echo json_decode($python);
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值