无法在php gettext内化中将英文翻译成中文

时间:2016-09-23 03:50:03

标签: php internationalization xampp window gettext

我目前正在尝试将英语转换为中文单词。这些是我的代码。

<?php
    $language = "zh_CN";
    putenv("LC_ALL=$language"); 
    setlocale(LC_ALL, $language);
    $domain = "messages";
    bindtextdomain($domain, "Local"); 
    bind_textdomain_codeset($domain, 'UTF-8');
    textdomain($domain);
    echo _("HELLO_WORLD");
?>

这是输出。它应该显示你好世界!而不是Hello World!

我测试了英文转换,它工作正常。但是,当我将$language = "en_US"替换为$language = "zh_CN"并重新启动apache时,它仍会显示英文翻译字。

我打印了putenv和setlocale的值,得到putenv = 1和setlocal = empty。

我正在使用

  1. Window 10单一语言。

  2. Xampp 5.6.12

  3. PHP Version 5.6.12

  4. 这是我的目录

    Local----->en_US ----->LC_MESSAGES ----->messages.mo
                                       ----->messages.po
         ----->zh_CN ----->LC_MESSAGES ----->messages.mo
                                       ----->messages.po
    

0 个答案:

没有答案