2017-05-03 22 views
0

gettextによるテキストの変換は機能しません。私を助けてくださいgettextに関する問題点PHP

$translate = 'messages'; 

putenv("LC_ALL=en_US"); 
T_setlocale(LC_ALL, "en_US"); 

bindtextdomain($translate, _ROOT_DIR_."locale/"); 
textdomain($translate); 
bind_textdomain_codeset($translate, 'UTF-8'); 

フォルダ構造:

ロケール - > はen_US - > LC_MESSAGES - > messages.mo messages.po

スクリプトmessages.po:

msgid "" 
msgstr "" 
"POT-Creation-Date: 2017-05-03 15:53+0300\n" 
"PO-Revision-Date: 2017-05-03 15:54+0300\n" 
"Last-Translator: \n" 
"Language-Team: \n" 
"MIME-Version: 1.0\n" 
"Content-Type: text/plain; charset=UTF-8\n" 
"Content-Transfer-Encoding: 8bit\n" 
"X-Generator: Poedit 2.0.1\n" 
"X-Poedit-Basepath: .\n" 
"Plural-Forms: nplurals=2; plural=(n != 1);\n" 
"Language: en_US\n" 

#: index.php:5 
msgid "Bonjour tout le monde" 
msgstr "Hello world" 
+1

ようこそ。 gettextが「うまくいかない」という点を明確にしてください。エラーメッセージを含め、達成したいことを説明してください。 –

+0

Windowsの場合は、あなたがSOLになるだろうと確信しています。* nixにいる場合は、.poファイルを変更した後にApacheを再起動する必要があります。 – CD001

+0

私は調整されました:.poと.moファイル、ロケール、ドメイン、テキストはまだ翻訳されていません エラーは表示されません .poを変更したたびに、私はオープンセーバーを再起動します –

答えて

0

php.iniファイルの1行をコメントアウトするだけで済みます。このように -

;extension=php_gettext.dll 
関連する問題