首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Google Maps API formatted_address

Google Maps API formatted_address
EN

Stack Overflow用户
提问于 2013-12-06 06:42:21
回答 2查看 1.2K关注 0票数 0

我使用php将纬度和经度转换为WordPress自定义字段中的地址。它以我想要的方式工作,除非我在地址末尾获得国家(例如:1234年第一个城市州90210美国)。

这是我用来进行转换的代码。对如何删除国家名称有什么想法吗?

代码语言:javascript
复制
function getaddress($post_id)
{
  $coorloc = get_field('event_location');

$url = 'http://maps.googleapis.com/maps/api/geocode/json?latlng='.urlencode($coorloc).'&sensor=false';
$json = @file_get_contents($url);
$data=json_decode($json);
$status = $data->status;
if($status=="OK")
$address = $data->results[0]->formatted_address;
update_post_meta($post_id, "geocoderaddress", $address);

}
add_action('acf/save_post', 'getaddress', 1);
EN

回答 2

Stack Overflow用户

发布于 2013-12-06 06:48:59

你不需要这样做,因为谷歌提供address_components正是出于这个原因。

http://maps.googleapis.com/maps/api/geocode/json?sensor=false&latlng=51.278777,-0.951090

API提供了每个组件,因此您可以随心所欲地使用每个部分。

供参考的address_components代码片段:

代码语言:javascript
复制
{
   "long_name":"United Kingdom",
   "short_name":"GB",
   "types":[
      "country",
      "political"
   ]
},
{
   "long_name":"RG27 9XB",
   "short_name":"RG27 9XB",
   "types":[
      "postal_code"
   ]
}
票数 0
EN

Stack Overflow用户

发布于 2013-12-06 06:53:50

我有个主意

代码语言:javascript
复制
$addressBits = explode(" ", $address);
$parts = count($addressBits);
for($i = o; $i <= $parts - 1; $i++){
    $newAddress .= $addressBits[$i] . " "; 
} 

也许你可以试试这样的东西

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20412321

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档