Rumah > pembangunan bahagian belakang > tutorial php > javascript - 非标准json格式解析的问题

javascript - 非标准json格式解析的问题

WBOY
Lepaskan: 2016-07-06 13:52:59
asal
2330 orang telah melayarinya

1.

javascript - 非标准json格式解析的问题

返回的是这个格式,PHP的json_decode();不能直接解析,难道要各种切割字符串成JSON格式,在用json_decode();解析?

javascript - 非标准json格式解析的问题

这是标准的json格式.

2.
javascript - 非标准json格式解析的问题
这个特别接近json格式了,但是还是无法解析.
各位有没有好的方法.

回复内容:

1.

javascript - 非标准json格式解析的问题

返回的是这个格式,PHP的json_decode();不能直接解析,难道要各种切割字符串成JSON格式,在用json_decode();解析?

javascript - 非标准json格式解析的问题

这是标准的json格式.

2.
javascript - 非标准json格式解析的问题
这个特别接近json格式了,但是还是无法解析.
各位有没有好的方法.

这里是 是不是 的问题
而不是 像不像 的问题

老老实实把提取出来吧。

<code class="php">$res = file_get_contents('https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=15011923452');
    /*"__GetZoneResult_ = {
    mts:'1501192',
    province:'广东',
    catName:'中国移动',
    telString:'15011923452',
    areaVid:'30517',
    ispVid:'3236139',
    carrier:'广东移动'
}"*/
    $res = trim(explode('=',$res)[1]);
    $res = iconv('gbk','utf-8', $res);
    $res = str_replace("'",'"', $res);
    $res = preg_replace('/(\w+):/is', '"$1":', $res);
    print_r(json_decode($res,1));
    /*Array
(
    [mts] => 1501192
    [province] => 广东
    [catName] => 中国移动
    [telString] => 15011923452
    [areaVid] => 30517
    [ispVid] => 3236139
    [carrier] => 广东移动
)*/</code>
Salin selepas log masuk

PHP的话必须要提取成json字符串才行。。

这是个js的属性对象吧...
如果不怕XSS注入的风险,可以直接扔到js里面。

全部取出来=>用正则去掉第一个{前的内容=>JSON.parse

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan