用PO文件本地化PHP

时间:2014-05-07 08:31:20

标签: php gettext poedit

我是php的基础程序员。我想使用PO / MO文件在php中构建多语言示例但是当我调用gettext函数(__()或_e()时)永远保持该函数。 我使用poedit GUI编辑.po文件和配置的poedit,如下所示。

  

添加" ../../.."对于源路径
  添加" __"和" _e"对于源关键字

并在htdocs / locale / en_EN / LC_MESSAGES /路径中找到.po / .mo文件。
我的PHP代码如下所示:

<html>
  <body>
    <h1>TRANSLATION : </h1>
    <br>  
    <?php
      $language = "en_EN";
      putenv("LC_ALL=$locale");
      setlocale(LC_ALL, $language);
      bindtextdomain("default", "./locale");
      textdomain("default");
      echo "str Hello ".__("Jhon");
    ?>
  </body>
</html>

我也将jhon翻译成了poed中的joe并且没有任何错误地验证它但是我在浏览器中运行时的示例在调试后没有显示除h1字符串之外的任何内容我发现php保留在__(&#34; jhon& #34;)功能。

另外我在stackoverflow中读了一个Q&A并将我的文件从en_EN.po / en_EN.mo重命名为default.po / default.mo,但它看起来像上一层。

0 个答案:

没有答案