翻译多种语言

9 php locale translation gettext internationalization

我的英语php gettext默认语言让我们说

我希望在我的一个控制器中,用其他两种语言翻译一些单词并将它们全部放在一个数组中.

理想情况下我能做到

$word_sv = gettext($word, 'sv_SV');
$word_fi = gettext($word, 'fi_FI');
Run Code Online (Sandbox Code Playgroud)

但它不存在.

是每次更改整体gettext设置的唯一方法吗?

function setLang($lang){
    putenv("LC_ALL=$lang");
    setlocale(LC_ALL, $lang);
    bindtextdomain("myPHPApp", "./locale");
    textdomain("myPHPApp");
}

setLang('sv_SV');
$word_sv = gettext($word);
setLang('fi_FI');
$word_fi = gettext($word);
Run Code Online (Sandbox Code Playgroud)

相关:在谷歌上看到它:i18n与gettext但没有语言环境的麻烦?


编辑

这里是建议的答案解决方案:

Mos*_*erg 1

我知道使用 gettext 的痛苦,但它的性能是我坚持下去的原因!

就您而言,您可能想看看这个小项目?我很确定这可能对您有帮助!

这只是使用带有翻译的 .ini 文件,您可以在文件之间自由切换并回显同一单词的不同语言。

https://github.com/Philipp15b/php-i18n