我试图使用以下测试URL从GeoNames.org检索一些数据:
http://api.geonames.org/countryInfoJSON?username=username&lang=en&country=DE,NL
这些数据如下所示:
{
"geonames" : [
{
...
"languages" : "de",
...
"countryName" : "Germany",
...
},
{
...
"languages" : "nl-NL,fy-NL",
...
"countryName" : "Netherlands",
...
}
]
}一切似乎都很正常,但我也需要每个国家的语言。列表中有一个字段,上面写着“语言”,我认为可以用,但实际数据不可靠。有时这对德国来说是正常的,但对荷兰来说是“NL-NL,fy-NL”。
我正在寻找一种语言'nl',但我如何知道我需要哪种语言为每个国家?我在哪里可以得到‘德语’和‘荷兰语’这样的语言的名字呢?我正在使用PHP,所以也许有一种方法可以获取正确的信息?
发布于 2015-04-09 08:44:42
“语言”字段是一个逗号分隔的语言定义列表,每个列表由一个2个字母的ISO 639语言代码和一个可选的2个字母ISO 3166国家代码组成。
您可以直接从地名网站找到一个所有ISO语言的列表;此列表包含其他语言代码(例如,3个字母代码)和您要查找的语言名称。
语言列表是按顺序排列的,所以第一语言是官方/口语最多的语言,所以你只需过滤第一语言。当然,这是次优的,因为有些国家有多种官方语言,比如瑞士;在这个国家,您可以找到第一种语言,加上所有具有明确国家专门化的语言(即fr-CH,it-CH,de-CH)。
https://stackoverflow.com/questions/24554453
复制相似问题