ISO 639 - PHP 中的可靠查找资源

ISO 639 - Reliable Lookup Resource in PHP

国际扩展使用 RFC 4646 语言标签

在 PHP intl extension, specifically the Locale class 中说:

Locales are identified using RFC 4646 language tags

RFC 4646 已弃用

我提到这个的原因是 RFC 4646 has been deprecated in favour of RFC 5646.

我打算使用 intl extension 将 ISO 639 代码翻译成它们各自的语言名称(例如 enEnglish).虽然这不是必需的,但它会很有帮助。

ISO 639 经常变化

639种语言代码由各自的注册机构积极维护和更改。这也不是假设性的问题,请参阅 change-log for ISO 639-3.

使用现已弃用的语言标签让我有点担心 intl extension 的维护情况; RFC 5656 于 2009 年发布,这算不上前沿标准。

问题

intl 扩展依赖于 ICU 提供语言代码等。 ICU 版本存储在常量 PHP_ICU_VERSION 中。 ICU 本身依赖于您在 Locale class 中引用的同一文档中指定的 Unicode 通用语言环境数据存储库 (CLDR):"The extensions used by CLDR in [Unicode Standard Annex] #35 (and inherited by ICU) are valid and used wherever they would be in ICU normally."