Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google maps place_Administration_area_level_1为同一区域返回不同的值_Google Maps_Google Maps Api 3_Geocoding_Google Geocoding Api - Fatal编程技术网

Google maps place_Administration_area_level_1为同一区域返回不同的值

Google maps place_Administration_area_level_1为同一区域返回不同的值,google-maps,google-maps-api-3,geocoding,google-geocoding-api,Google Maps,Google Maps Api 3,Geocoding,Google Geocoding Api,我使用谷歌地图api获得了西班牙马德里一所房子的街道地址。然后我得到了地方行政区1级的以下信息 地方行政区一级短:Comunidad de Madrid 地点、行政区、一级、长:Comunidad de Madrid 然后我将这些详细信息保存到数据库中。现在我想搜索我从马德里保存的地址。所以,在前端,我再次搜索西班牙马德里的google place api。然后谷歌返回我以下关于地方行政区1级的信息 地方行政区一级简称:马德里社区 地点、行政区、级别、长度:马德里社区 看到区别了吗?现在我不能使

我使用谷歌地图api获得了西班牙马德里一所房子的街道地址。然后我得到了地方行政区1级的以下信息

地方行政区一级短:Comunidad de Madrid 地点、行政区、一级、长:Comunidad de Madrid

然后我将这些详细信息保存到数据库中。现在我想搜索我从马德里保存的地址。所以,在前端,我再次搜索西班牙马德里的google place api。然后谷歌返回我以下关于地方行政区1级的信息

地方行政区一级简称:马德里社区 地点、行政区、级别、长度:马德里社区

看到区别了吗?现在我不能使用这个字符串来搜索我的数据库,因为它有不同的值。在这两种情况下,我都发送language=en。那么为什么它会为这个地址字段返回不同的值呢?
唯一的区别是,对于第一个,我使用了马德里一所房子的街道地址。在第二个例子中,我只使用了西班牙的马德里。但在这两种情况下,它应该为place_Administration_area_level_1返回相同的值。因此,我无法通过单个值搜索数据库。

这是因为地理编码API web服务应用了本地化策略。您可以在下面的帖子中阅读:

谷歌地图地理编码API返回的街道级地址现在倾向于使用本地语言,同时尽可能让只阅读所需语言的用户和本地人都能理解地址

如果本地语言和用户语言都使用相同的字母表,那么地理编码API现在将返回街道和地方的本地名称

在您的示例中,第一个请求搜索街道级别的地址,因此您可以获得地址组件的西班牙语名称,如上文所述,地址组件管理区域级别1
Comunidad de Madrid

第二个请求不是街道级别的地址,因此不应用上述策略,您将根据语言参数获取名称,该参数为English
Community of Madrid

我相信您可能对以下功能请求非常感兴趣:

一旦实现了此功能请求,您将能够比较地址组件中的位置ID而不是名称


我希望这能解决您的疑问。

您是否阅读过谷歌地图关于存储各种API数据的服务条款?@MrUpsidown您能解释一下我是如何从中得到负面评价的吗?原因是什么?@Upsidown先生你没有回答我的问题。我是谷歌地图API的新手。这就是我问这个问题的原因。我还没有看到这个问题问过我的其他人。如果你知道答案或原因,请说得恰当。我知道我没有回答你的问题。这只是对您正在数据库中存储Google内容这一事实的评论。请阅读。可能的副本非常感谢您的回答。这很有帮助。是的,我对这个功能要求很感兴趣。我不明白为什么它一开始就不在那里。如果以不同的语言返回,用户应该如何比较管理区域级别1?希望我能在今年把它修好