質問

次のコードを使用して.mo翻訳を読み込もうとしていますが、動作しません。 php gettext extがあります。 phpinfo()で有効にし、必要なロケールがすべてインストールされます。 私は何かを見逃しましたか?

$locale = "en_US";

putenv("LC_ALL=$locale");

setlocale(LC_ALL, $locale);

bindtextdomain("messages", "./locale");
textdomain("messages");

私の.moファイルは ./ locale / en_US / messages.mo

にあります
役に立ちましたか?

解決

Apacheスレッドが.moファイルをロードするとき、Apacheスレッドがリサイクルされるまでリロードしません。 .moファイルを更新し、phpが新しい.moファイルを使用していることを確認したい場合は、実際にapacheを再起動するか、moファイルに別の名前を使用する必要があります。

とにかく、LANG環境変数を設定します。

他のヒント

おそらく、パスを相対パスではなく絶対パスに変更する必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top