代码之家  ›  专栏  ›  技术社区  ›  Boldewyn

pybabel或其他用于php的l10n库

  •  4
  • Boldewyn  · 技术社区  · 14 年前

    Babel or pybabel 是python中cldr(公共语言环境数据存储库)的接口。因此,它与php的i18n函数和类具有相同的“知识”(如果主机上安装了适当的locale),但是不需要使用诸如 setlocale()

    有没有类似的php库或工具包?尤其是为了实现:

    1. 将数字转换为语言和区域特定格式

    2. 同样地转换日期

    3. 访问特定区域中的名称、货币和其他信息(例如

      >>> from babel import Locale
      >>> locale = Locale('en', 'US')
      >>> locale.territories['US']
      u'United States'
      >>> locale = Locale('es', 'MX')
      >>> locale.territories['US']
      u'Estados Unidos'
      
    1 回复  |  直到 9 年前
        1
  •  2
  •   Sagi    14 年前

    PHP5.3附带 intl 扩展:

    国际化延伸 (进一步称为国际)是 icu库包装器,启用php 执行uca一致性的程序员 整理和 日期/时间/数字/货币格式 在他们的剧本里。

    1. 可以使用 数字格式化 班级:

      $fmt = new NumberFormatter("de_DE", NumberFormatter::DECIMAL);
      echo $fmt->format(1234567.891234567890000);
      
    2. 可以使用转换日期 intldateformatter 班级:

      $fmt = new IntlDateFormatter("en_US", IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles', IntlDateFormatter::GREGORIAN);
      echo $fmt->format(0);
      
    3. 使用 现场 班级:

      echo Locale::getRegion('de-CH-1901');
      

    此外,还有 校勘 消息格式化程序 类。