PHP:gettext需要LC_MESSAGES目录吗?

Sil*_*ght 5 php gettext internationalization

要翻译我的PHP应用程序,我使用gettext模块编译.这是根据文档制作的翻译目录树:

locale/
  cs_CZ/
    LC_MESSAGES/
       messages.po
       messages.mo
  de_DE/
    LC_MESSAGES/
       messages.po
       messages.mo
  fr_FR/
    LC_MESSAGES/
       messages.po
       messages.mo
Run Code Online (Sandbox Code Playgroud)

问题:是否有可能摆脱LC_MESSAGES目录?如果我使用这种结构,PHP能否找到翻译?

locale/
  cs_CZ/
     messages.po
     messages.mo
  de_DE/
     messages.po
     messages.mo
  fr_FR/
     messages.po
     messages.mo
Run Code Online (Sandbox Code Playgroud)

我的PHP切换翻译:

<?php
    setlocale(LC_ALL, 'fr_FR.UTF-8');
    bindtextdomain("messages", "locale");
    bind_textdomain_codeset("messages", 'UTF-8');
    textdomain("messages");
?>
Run Code Online (Sandbox Code Playgroud)

先感谢您.

mar*_*rio 4

唯一可行的解​​决方法是LC_MESSAGES -> .在每个语言子目录中创建符号链接。(但这使 PHP 应用程序安装变得复杂。FTP 很少可以创建符号链接。)