I18n使用PHP gettext()

时间:2017-09-07 13:25:33

标签: php internationalization translation gettext

我正在尝试使用PHP gettext()翻译我的网站,我已经实现了以下代码:

if ( false === function_exists('gettext') ) {
    echo "You do not have the gettext library installed with PHP.";
    exit(1);
}
setlocale(LC_ALL, 'en_US.UTF-8');
$localedir = dirname(__FILE__) . '/Locale';
echo $localedir . ': ';
bindtextdomain('messages', $localedir);

textdomain('messages');
echo gettext("Hello");
exit(0);

但它似乎没有用,因为它回显了我在gettext()中传递的相同字符串。

我在关注https://blog.udemy.com/php-gettext/教程时使用poedit创建了* .po,*。em文件。

以上代码取自https://github.com/nota-ja/php-gettext-example/blob/master/index.php

但是在提供此类解决方案时,我无法翻译给定内容。任何形式的帮助将不胜感激。

谢谢!

1 个答案:

答案 0 :(得分:0)

你不必与function_exists等于false。 function_exists将检查函数是否存在

if (function_exists('gettext')) {
   // this function exists
}else{
     echo "You do not have the gettext library installed with PHP.";
    exit(1);
}