本地化:如何格式化日期和数字
Localization: How to format dates and numbers
我目前正在开发一个 Web 应用程序,我试图使该网站多语言化。
从用户那里我得到了以下信息:
- 语言 - 来自
$_SERVER['HTTP_ACCEPT_LANGUAGE']
- 国家 - 来自用户的 IP 地址(带有 API)
现在,网站采用该语言并以正确的语言显示页面 - 例如英语或德语。现在我想格式化数字和日期,但我不知道应该用什么来格式化日期,例如:
- 德国:dd.MM.yyyy
- 美国:MM/dd/yyyy
但是我应该用什么来格式化日期呢?语言还是国家?
如果用户在美国但说德语怎么办?我应该使用美国格式还是德语格式?
很高兴听到您对此的看法以及您如何处理本地化。
您提出的问题已使用语言环境解决。区域设置特定于一种语言,然后可能更特定于地理信息和脚本变体。
CLDR 是与语言环境相关的信息库。例如,您可以找到任何语言的特定城市的名称,或者查看它们如何格式化特定区域的日期。
您可以将此数据与 Globalize.js library and its date formatting module 结合使用。
有关如何使用 Globalize.js 的一般概述,请参阅 this answer。
我目前正在开发一个 Web 应用程序,我试图使该网站多语言化。 从用户那里我得到了以下信息:
- 语言 - 来自
$_SERVER['HTTP_ACCEPT_LANGUAGE']
- 国家 - 来自用户的 IP 地址(带有 API)
现在,网站采用该语言并以正确的语言显示页面 - 例如英语或德语。现在我想格式化数字和日期,但我不知道应该用什么来格式化日期,例如:
- 德国:dd.MM.yyyy
- 美国:MM/dd/yyyy
但是我应该用什么来格式化日期呢?语言还是国家? 如果用户在美国但说德语怎么办?我应该使用美国格式还是德语格式?
很高兴听到您对此的看法以及您如何处理本地化。
您提出的问题已使用语言环境解决。区域设置特定于一种语言,然后可能更特定于地理信息和脚本变体。
CLDR 是与语言环境相关的信息库。例如,您可以找到任何语言的特定城市的名称,或者查看它们如何格式化特定区域的日期。
您可以将此数据与 Globalize.js library and its date formatting module 结合使用。
有关如何使用 Globalize.js 的一般概述,请参阅 this answer。