Windows で WAMP サーバーを使用し、テスト プロジェクトを作成します。これらのファイルが Web サイト フォルダーにあります。
C:\wamp\www\project\locale\ar_EG\LC_MESSAGES\messages.po C:\wamp\www\project\locale\en_US\LC_MESSAGES\messages.po
以下はPHPコードです:
$language="en_US";
$encoding = "UTF-8";
putenv("LANG=".$language);
setlocale(LC_ALL,$language);
$domain="messages"; // name of PO file
bindtextdomain($domain,"Locale");
bind_textdomain_codeset($domain, $encoding);
textdomain($domain);
echo gettext("name");
上記のコードは正常に動作しています。に置き換えようとするとen_US
、ar_EG
の翻訳も表示され、フォルダーen_US
を削除して再試行すると、 notが表示されます。en_US
msgid
msgstr
setlocale
検索したところ、Windows プラットフォームに問題があることがわかりましたが、Windows で実行するには解決策が必要です。