在 Java 中,您可以调用 Locale.getAvailableLocales()
来获取可用语言环境的列表。
我期待 PHP 的等价物 Locale类,但找不到。
有没有办法获取所有有效语言环境的数组?
最佳答案
这里的部分混淆是 PHP 有两个概念,称为“语言环境”,这两个概念几乎完全不同。
第一个是较旧的,它基本上只使用 C 语言环境功能。这就是 setlocale
和某些 PHP 函数(例如 money_format
)中的语言环境支持背后的原因。这就是提到在命令行上运行 locale -a
和使用 setlocale
的其他答案。
PHP 的 Locale
类和 other related functionality from the intl
extension较新,并且工作方式不同。它没有使用 libc 语言环境的东西,而是使用了一个名为 ICU 的库,它提供了自己的语言环境数据。 PHP 确实提供了一种方法来确定此系统支持哪些语言环境:ResourceBundle::getLocales .这里的文档有点模糊,但您可以将其作为静态方法调用并传递空白字符串以使用 ICU 的默认资源,从而获得 intl
支持的语言环境列表:
ResourceBundle::getLocales('');
关于php - 有没有办法在 PHP 中获取可用语言环境列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10073425/