我正在寻找一种符合标准的方式来存储 Web 应用程序的多语言内容。到目前为止,我使用了自己的“translate()”函数从文件或数据库中的字典表中读取数据。但是,如果您使用 Web 应用程序的不同副本,则使数据库表中的字典保持最新是非常麻烦的。
我喜欢 gettext,因为有很多工具可供它使用。但是,我为不同平台开发应用程序。我绝对不愿意处理 setlocale() 和 consorts 的蹩脚方式 - 即几十种不同的语言环境字符串变体,这些变体因系统而异,您需要提供这些变体才能使其正常工作。永远不能。我有一组语言——比如 de、en 和 es——我想加载适当的字典并使用 _() 而不接触 setlocale() 或 bindtexdomain() 一次。
使用 gettext 有可能吗?或者有人知道另一种简单、小巧、快速(!)i18n 的 PHP 解决方案,它可以处理 .po/.mo 文件,最好不需要 PHP 扩展?