当我尝试将JSON字符串解码为数组时,它只解码整个字符串中的一个条目。
public function GetAllCommunities() {
$json_url = "URL";
$json_name = "NAME";
$returnArray = null;
$curl_init = curl_init();
curl_setopt($curl_init, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl_init, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl_init, CURLOPT_URL, $json_url);
$result = curl_exec($curl_init);
curl_close($curl_init);
//print_r($result);
$jsonArray2 = json_decode($result, true);
print_r($jsonArray2);
}
当我print_r
result
时,我会获得所有数据,但当我解码json_decode($result, true);
时,我只会从整个Feed中获得1个条目。
知道为什么吗?这是否意味着Feed中存在错误?
我在那里嵌套了JSON,并且我使用它来检查它们的正确性:http://json.parser.online.fr/
感谢。
答案 0 :(得分:4)
您的JSON格式不正确。您在同一级别上有多个具有相同名称的对象(Comnunity
)。
而不是
[
{
Comunity: ... ,
Comunity: ... ,
Comunity: ... ,
}
]
执行:
[
{
Comunity: ...
},
{
Comunity: ...
},
{
Comunity: ...
}
]