在普通的php(没有任何框架)上有i18n的库吗?

时间:2012-07-16 13:33:56

标签: php internationalization

  

可能重复:
  How do you build a multi-language web site?

我继承了一些代码,这只是简单的PHP,我必须做一些更改。 因为变化相当小并且最大的请求是支持多语言,所以我选择保留现有代码而不是重写它,但是我需要一个用于普通php的i18n库。

是否有与普通php一起使用的默认库?我真的不知道,使用/下载链接真的很有用。

更新1:

如果您可以指向一些类似控制台的工具,这可以帮助我构建一个包含所有应该翻译的字符串的文件,而不是手工完成(在CakePHP中是__()之间的每个实例,这将是很好的。功能)。

2 个答案:

答案 0 :(得分:5)

intl(自php 5.3开始)和gettext(自永远以来)

来自php intl扩展文档页面:

  

国际化扩展(进一步称为Intl)是一个   ICU库的包装器,使PHP程序员能够执行   UCA - 符合条件的排序规则和日期/时间/数字/货币格式   在他们的剧本中。

来自gettext docs页面:

  

这个软件包为程序员,翻译人员甚至用户提供了一个井   集成的工具和文档集。具体来说,GNU   gettext实用程序是一组提供框架的工具   哪些其他免费软件包可能会产生多语言消息。

答案 1 :(得分:2)

gettext是使用非常普遍的gettext系统的默认PHP i18n扩展。