Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何解析这种json_Php_Json - Fatal编程技术网

Php 如何解析这种json

Php 如何解析这种json,php,json,Php,Json,我只是在玩google plus服务,我看到了来自google服务器的响应。它看起来像下面这样 )]}' [[["er",,,,,405,,,,9] ,["di",22,,,,,[] ,[] ,,,[] ,[] ,[] ] ,["e",3,,,81] ]] 我从响应中删除了)]}',并尝试进行json解码 $arr = json_decode($response,true) var_dump($arr); 但我发现了一个错误,就像多个逗号一样。有人能告诉我谷歌是如何解析它的json的吗?或

我只是在玩google plus服务,我看到了来自google服务器的响应。它看起来像下面这样

)]}'

[[["er",,,,,405,,,,9]
,["di",22,,,,,[]
,[]
,,,[]
,[]
,[]
]
,["e",3,,,81]
]]
我从响应中删除了
)]}'
,并尝试进行json解码

$arr = json_decode($response,true)
var_dump($arr);

但我发现了一个错误,就像多个逗号一样。有人能告诉我谷歌是如何解析它的json的吗?或者它是json还是其他什么东西。

那段代码可能直接注入了某种“新函数”或脚本标记中。 第一部分似乎结束了先前的陈述

无论如何,我不确定它到底是用来做什么的,也许在实际使用这些数据之前已经做了一些替换

但要解决你的问题: 您需要将所有未定义的索引替换为null。 大致如下:

while(strpos($response, ",,") !== false) {
    $response = str_replace(",,", ",null,", $response);
}
$response = str_replace("[,", "[null,", $response);
$response = str_replace(",]", ",null]", $response);
$arr = json_decode($response,true);
var_dump($arr);

这不是一个有效的JSON,您能改变它的生成方式吗?事实上,它是如何产生的?@unixarmy:它是非官方的。。但我只是想知道它是如何工作的。