0

我已经成功地使用这些行在 twig 中启用了国际化和 {% trans %} 标记:

$language = "...";
$domain = "project";
putenv("LC_MESSAGES=$language");
setlocale(LC_MESSAGES, $language);
bindtextdomain($domain, SITE_DIR . "locale");
textdomain($domain);
bind_textdomain_codeset($domain, "UTF-8");

和树枝模板:

...
{% trans "Translation.Key" %}
...

不幸的是,它随机工作。我的意思是,当我一直按 F5 时,比如说,每秒,或者在页面之间切换,有时它会切换到应有的翻译字符串(“Translation.Key”变成“要输出的本地化值”),有时它会退回到在 {% trans %} 标签(“Translation.Key”)下输出字符串。

同时,我的日志中看不到任何错误。我应该检查什么以了解问题的根源并使其始终如一地工作?

提前致谢。

4

3 回答 3

2

在我的情况下,每次对翻译文件进行更改时,通过重新启动 Apache(或当我在远程服务器上使用 nginx 时为 php5-fpm)来解决问题。否则, gettext 会出现问题,如问题中所述。

于 2013-12-16T03:28:15.593 回答
0

确保在开发过程中禁用 Twig Cache。

于 2013-11-26T03:05:16.320 回答
0

就个人而言,它来自 php-fpm。重新启动 Apache 什么也没做。

在 centos7 上重启 php-fpm

systemctl restart php-fpm

对于其他操作系统,请检查此链接以重新启动 php-fpm: https ://serverfault.com/questions/189940/how-do-you-restart-php-fpm

于 2018-09-10T14:24:33.053 回答