我已经能够解析实际的.json文件,但这个链接似乎无法解析。
http://forecast.weather.gov/MapClick.php?lat=36.321903791028205&lon=-96.80576767853478&FcstType=json
我在想,因为链接本身不是.json文件,而是json格式的链接......我在尝试解析它时遇到问题......即使我开始使用...
<?php
$url = "http://forecast.weather.gov/MapClick.php?lat=36.321903791028205&lon=-96.80576767853478&FcstType=json";
$json = file_get_contents($url);
$json_a = json_decode($json,true);
// <---------- Current Conditions ----------> //
//Display Location
$location_full = $json_a['location']['areaDescription'];
?>
在我的页面上,我想显示我的信息:
<?php
require 'req/weatherinfo.php';
?>
<!DOCTYPE html>
<html>
<head>
<title>PawneeTV Weather</title>
</head>
<body>
<?php echo $location_full; ?><p>
</body>
</html>
为什么会产生空白页?我现在已经清除了错误,它只是没有显示任何内容。我已使用.json文件源多次完成,它可以使用此源http://api.wunderground.com/api/43279e1c0b065c2e/forecast/q/OK/Pawnee.json,但不能使用以= json而不是.json结尾的链接
答案 0 :(得分:-1)
在这种情况下,您无法使用file_get_contents
。有关这方面的更多解释,请阅读here。
这段代码正在运行:
<?php
$url = "http://forecast.weather.gov/MapClick.php?lat=36.321903791028205&lon=-96.80576767853478&FcstType=json";
// create curl resource
$ch = curl_init();
// set url
curl_setopt($ch, CURLOPT_URL, $url);
//return the transfer as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13');
// $output contains the output string
$output = curl_exec($ch);
// close curl resource to free up system resources
curl_close($ch);
$json_a = json_decode($output,true);
// <---------- Current Conditions ----------> //
//Display Location
$location_full = $json_a['location']['areaDescription'];