使用PHP和Linux获取文本:无法切换语言

时间:2014-10-26 10:24:19

标签: php linux localization xampp gettext

我正在尝试使用PHP(Linux Mint in German,XAMPP)构建一个多语言网站,我无法在语言之间切换。

为了排除所有其他潜在问题,我将整个代码分解为最小的例子。

的index.php:

session_start();

$locale = "en_GB.utf8";
//To switch languages, (un)comment the following:
//$locale = "es_ES.utf8"; 
//$locale = "de_DE.utf8";

    putenv("LANG=" . $locale);
    setlocale(LC_ALL, $locale); 

    $domain = "strings";
    bindtextdomain($domain, "locale");
    bind_textdomain_codeset($domain, 'UTF-8');

    textdomain($domain);

echo _("Hello World!");

此代码总是显示为输出" Hallo Welt!" (德语翻译),即使语言环境设置为英语或西班牙语(硬编码以简化它)。

到目前为止我所做的事情:

  • 检查文件夹结构(我尝试使用/locale/ll_CC/LC_MESSAGES/strings.po和/locale/ll_CC.utf8/LC_MESSAGES/strings.po)
  • 使用locale -a
  • 检查系统上的已安装区域设置
  • 切换语言后重新启动Apache

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

echo __(" Hello World!");有2个下划线而不是1