Accept-Language标头中的奇怪语言代码

时间:2011-11-14 08:52:09

标签: php http localization http-headers

我正在通过$_SERVER['HTTP_ACCEPT_LANGUAGE']检测用户接受的语言,并且我收到了奇怪的语言和国家/地区代码。

我找到的语言代码:

  • es-419
  • es-es_tradnl
  • *

我查了一些代码语言列表,但没有找到这些代码:

我知道es-es_tradnl意味着西班牙传统,但任何有关es-419和'*'的线索...... 有关该代码来自何处的任何线索?

编辑,问题扩展:
我在哪里可以找到完整的语言代码列表?

3 个答案:

答案 0 :(得分:3)

HTTPbis, Part 3, Section 2.4 _

  

语言子标签的名称空间由IANA管理(请参阅http://www.iana.org/assignments/language-subtag-registry)。

答案 1 :(得分:2)

HTTP/1.1: Header Field Definitions:

  

特殊范围“*”,如果出现在Accept-Language字段中,   匹配每个标记不匹配的任何其他范围   接受语言字段。


正如我在评论中已经提到的那样,es-419代表

  

西班牙语适合拉丁美洲和加勒比地区使用   联合国区域代码

来自Wikipedia

答案 2 :(得分:0)

实际上,我想直接指出你的资源。如果你去这里(下面的链接),你会发现那些神秘的语言代码。

http://msdn.microsoft.com/en-us/library/cc233968.aspx

我希望这有帮助,因为其他人没有方便你的链接,我想我会添加它。有449种语言代码列表(只是语言代码和国家/地区代码的组合)。

该列表每年更新几次,如果您想查看更新历史记录,请查看我给您的列表的父页面。希望这会有所帮助。