我正在尝试使用PHP从以下JSON文件中获取数据。我特别想要“ temperatureMin”和“ temperatureMax”。
这可能真的很简单,但是我不知道该怎么做。我被困在file_get_contents(“ file.json”)之后该做什么。一些帮助将不胜感激!
{ "daily": { "summary": "No precipitation for the week; temperatures rising to 6° on Tuesday.", "icon": "clear-day", "data": [ { "time": 1383458400, "summary": "Mostly cloudy throughout the day.", "icon": "partly-cloudy-day", "sunriseTime": 1383491266, "sunsetTime": 1383523844, "temperatureMin": -3.46, "temperatureMinTime": 1383544800, "temperatureMax": -1.12, "temperatureMaxTime": 1383458400, } ] } }
使用以下命令获取JSON文件的内容file_get_contents():
file_get_contents()
$str = file_get_contents('http://example.com/example.json/');
现在使用解码JSON json_decode():
json_decode()
$json = json_decode($str, true); // decode the JSON into an associative array
您有一个包含所有信息的关联数组。要弄清楚如何访问所需的值,可以执行以下操作:
echo '<pre>' . print_r($json, true) . '</pre>';
这将以一种易于阅读的格式打印出数组的内容。请注意,第二个参数设置为true,以便print_r()知道应该 返回 ed 输出(而不是仅打印到屏幕上)。然后,您可以访问所需的元素,如下所示:
true
print_r()
$temperatureMin = $json['daily']['data'][0]['temperatureMin']; $temperatureMax = $json['daily']['data'][0]['temperatureMax'];
或根据需要遍历数组:
foreach ($json['daily']['data'] as $field => $value) { // Use $field and $value here }