使用 PHP 解析 Google 高程结果
我对 JSON 和解析很陌生。从 Google Elevation API 请求海拔时,我得到以下结果。
{
"status": "OK",
"results": [ {
"location": {
"lat": 39.7391536,
"lng": -104.9847034
},
"elevation": 1608.8402100
} ]
}
解析时,我不知道如何使用 json_decode 结果有效引用海拔。我的删节代码如下:
$json_string = file_get_contents($url);
$parsed_json = json_decode($json_string);
$geoElevation = $parsed_json->{'elevation'};
谁能告诉我为什么我无法使用上面的方法访问“海拔”值?
I'm new to JSON and parsing. I get the following results when requesting an elevation from the Google Elevation API.
{
"status": "OK",
"results": [ {
"location": {
"lat": 39.7391536,
"lng": -104.9847034
},
"elevation": 1608.8402100
} ]
}
When parsing, I don't know how to effectively reference the elevation using the json_decode results. My abridged code is below:
$json_string = file_get_contents($url);
$parsed_json = json_decode($json_string);
$geoElevation = $parsed_json->{'elevation'};
Can anyone tell me why I can't access the "elevation" value using the above?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
试试这个:
或者如果您更喜欢使用数组:
第二个参数:
Try this:
or if you prefer using array:
The second argument:
您应该使用
print_r($parsed_json)
来更好地可视化数据结构:这是一个数组,可以通过使用
json_decode($json_string, TRUE);
获得。这使得遍历条目变得更加容易。在您的情况下,您想要:
通常您需要在数字级别上进行
foreach
。但如果您只期望一个结果,那么[0]
就完全可以使用。You should use
print_r($parsed_json)
to get a better visualization of your data structure:This is an array, which you get by using
json_decode($json_string, TRUE);
. That makes it easier to traverse the entries.In your case you want:
Normally you would want to
foreach
over the numeric levels. But if you only expect one result, then[0]
is perfectly fine to use.