如何使用PHP获取JSON数据

时间:2014-11-09 05:14:52

标签: php json dictionary

我是PHP的新手,我只是想从JSON字典中获取一个值。这看起来很简单(至少对我来说),但我遇到了麻烦。我查看了JSON_decode的PHP文档,我还查看了" Parsing JSON data from a remote server"但那并没有做我想做的事。它将我想要的字典项返回为0然后只是吐出JSON文件。然后我看了" get data from JSON with php"而这只是什么都不返回。

JSON示例

{ 
  "ask": 344.28,
  "bid": 343.89,
  "last": 343.97
}

首先尝试

$jsoncontent=file_get_contents("https://api.bitcoinaverage.com/ticker/global/USD");`
$priceusd=json_decode($json-content);

$lastusd=$priceusd['last'];

echo "Decoded JSON:\n";
echo "$priceusd\n";
echo "Raw JSON:\n";
echo "$jsoncontent\n";

第二次尝试

$result=file_get_contents("https://api.bitcoinaverage.com/ticker/global/USD");
 $result = iconv('UTF-16', 'UTF-8', $result);
 $json = json_decode($result);

 echo $json->last;

我想要的只是URL中JSON中的一个字典项的值。

谢谢!

1 个答案:

答案 0 :(得分:7)

假设$data包含从服务器返回的内容,您可以:

$object = json_decode($data);
$last = $object->last;

或:

$array = json_decode($data, true);
$last = $array['last'];

如果省略json_decode的第二个参数,它将返回一个对象,并且您可以访问所需的部分作为对象属性。如果给出第二个参数true,它将返回一个关联数组,并使用数组表示法访问该元素。