有很多方法可以在PHP中设计多语言应用程序.一些语言文件基于,另一些基于数据库.
我希望将它用于少量文本,例如错误 - 最多一段.
我想我需要二十种左右的
语言.
我真的在寻找建议而不是明确的答案.你以前用过什么,最快,最容易更新等等.
非常感谢,
该Gettext系列函数是一个很好的起点:
gettext函数实现了一个NLS(本地语言支持)API,可用于国际化您的PHP应用程序.
Zend_Translate非常灵活,具有线程安全的实现gettext.该手册指出它解决了本机国际化实现的以下问题:
- API不一致:不同的源格式没有单一的API.例如,gettext的使用非常复杂.
- PHP仅支持gettext和native数组:PHP本身仅提供对array或gettext的支持.所有其他源格式都必须手动编码,因为没有本机支持.
- 未检测到默认语言:如果不深入了解不同Web浏览器的背景,则无法检测用户的默认语言.
- Gettext不是线程安全的:PHP的gettext库不是线程安全的,它不应该在多线程环境中使用.这是由于gettext本身的问题,而不是PHP,但它是一个存在的问题.
值得注意的是,Zend Framework它不是一个完整的堆栈框架 - 换句话说,你不需要使用整个东西只是为了利用它的国际化API.
我真正喜欢它的是它支持不同数据源的多个适配器,您只需对应用程序进行非常轻微的修改即可轻松混合,匹配和更改.希望有所帮助.