2016-04-03 57 views
0

我有一个来自curl get请求的json对象。无法访问json_decode的值

// Curl Stuff 
$resp = curl_exec($curl); 
{"food": {"id":585897,"foodGroup":"meats","calories":1109,"foodTier":30}} 

我在一个变量与json_decode

$data = json_decode($resp, TRUE); 

保存它,我已经试过访问在几个方面的数据,但我没有得到任何回应

echo $data[0][1]; 
echo $data[0]['id']; 

此外,如果有人能我在循环这些数据的正确方向,我将不胜感激。

+0

的可能的复制[我如何提取数据从JSON与PHP?](http://stackoverflow.com/questions/29308898/how-do-i-extract-data-from-json-with-php) –

回答

2

随着你的json_decode真实参数,你有关联数组,所以它必须是:

echo $data['food']['id']; 

通过数字获取ID:

$da = array(); 
foreach($data as $key=>$val){ 
    $da[$key] = array_values($val); 
} 
print_r($da); 

echo $da['food'][0]; 
+0

有没有办法访问第一个参数与数字符号? –

+0

当然可以。有。 –

+0

如何?我尝试了'TRUE'参数,我得到一个错误,指出'致命错误:不能使用类型为stdClass的对象作为数组' –