在php程序中,我想增量地解析JSON。例如,给定部分JSON
[1, 2, {"id": 3},
我想要在JSON输入的其余部分被流式传输之前获取1、2和字典。php的json_decode
只返回NULL
,似乎没有办法获得错误的位置。
发布于 2013-03-22 23:30:45
我已经写了一个SAX-like JSON streaming parser,应该可以做到这一点。如果有效,请让我知道!
发布于 2011-09-06 03:46:45
有一个简单的变通办法,如果保证每个单独的元素都是完整的,或者换句话说--你不能像这样只得到对象的一半:
{"a": 1,
json_decode()
将返回NULL,因为您传递给它的字符串不是有效的JSON字符串。将尾随的逗号替换为结束括号,这样就可以了:
[1, 2, {"id": 3}]
现在解码它没有问题,并等待稍后接收到流的其他部分。
https://stackoverflow.com/questions/7311402
复制相似问题