0

これらの行を使用して、小枝で国際化と {% 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 に答える