0

こんにちは、Windows で gettext を使用しようとしています。このコードは Linux では正常に動作しますが、Windows では動作しません。問題は、ロケール フォルダーへのパスが見つからないことです。何かアドバイス?

<?php
// I18N support information here
$language = 'pt_BR';
putenv("LANG=$language"); 
setlocale(LC_ALL, $language);

// Set the text domain as 'messages'
$domain = 'messages';
bindtextdomain($domain, './locale'); 
textdomain($domain);

echo gettext("A string to be translated would go here");

?>

4

1 に答える 1

0

次のようにコードを配置すると、Windowsボックス(Windows 7 Professional)で問題なくコードが機能しました。

 c:\temp\test.php

およびリソースファイルとして

 c:\temp\locales\pt_BR\LC_MESSAGES\messages.mo

同じディレクトリにmessages.poを作成してmessage.moファイルを作成し、Poeditでファイルを編集し、「翻訳する文字列はここに表示されます」の翻訳を追加しました(ポルトガル語がわからないため、ダミーテキストでした) 、保存(.moとして)。

于 2012-08-26T05:06:51.190 に答える