我有一个格式奇怪的JSON ......但它是我接收它的方式。因为里面的数组很大,简单地复制和粘贴它需要很长时间,所以我想知道是否有PHP方法可以做到。
我得到它的方式是这样的:
{"count":459,"results":[{"title":"Something ....}],"params":{"limit..},"type":"Listing","pagination":{"..":5}}
但我想只得到"结果"数组,基本上是[{"title":"Something ....}]
的一部分。我该怎么做?
答案 0 :(得分:1)
待办事项
$arr = json_decode(your_json, true);
如果再次将其作为JSON,请执行
json_encode($arr['results']);
答案 1 :(得分:0)
您可以按如下方式进入该部分:
$json = '{"count":459,"results":[{"title":"Something ...."}],"params":{"limit":".."},"type":"Listing","pagination":{"..":5}}';
$obj = json_decode($json);
echo $obj->results[0]->title;
输出:
某事......
答案 2 :(得分:0)
你必须解码你的json。确保json有效!
您解码的json返回类型为stdClass
的对象而不是数组!
请参阅下面的测试代码:
$json = '{"count":459,"results":[{"title":"Something ...."}],"params":{"limit": "foo"},"type":"Listing","pagination":{"foo":5}}';
$decoded = json_decode($json);
因此,您可以从对象 results
访问数组$decoded
:
print_r($decoded->results);
但是,在数组中,有对象,因此:
echo $decoded->results[0]->title; // Something ....