PHP Gettext:如何在设置域的路径后更改默认MO路径


PHP Gettext: how to change the default MO path after setting the path of the domain?

我使用PHP Gettext扩展来本地化Web应用程序。当你这样做:

bindtextdomain("example", "/locales");

如果您将区域设置为fr_fr,它将在中查找MO

/locales/fr_FR/LC_MESSAGES/example.mo

有没有办法自定义该路径?例如,我想使用以下结构:

/locales/example.fr_FR.mo

目录结构由gettext固定。

因为必须存储许多不同包的许多不同语言,所以我们需要一些方法将这些信息添加到文件消息目录文件中。Unix环境中通常使用的方法是在文件名中使用这种编码。这也是在这里完成的。bindtextdomains第二个参数中给出的目录名(或默认目录),后面是区域设置名称、区域设置类别和域名:

目录名称/locale/LC_category/domain_name.mo