2010-11-09 103 views
6

我安裝了php-gettext軟件包,phpinfo()顯示gettext已啓用。gettext未翻譯

我app.po樣子:

msgid "Welcome" 
msgstr "Willkommen auf meiner Homepage!" 

msgid "Hier you can find stuff about me." 
msgstr "Hier finden Sie Informationen uber mich."` 

我的PHP文件看起來像:

putenv('LC_ALL=de_DE'); 
setlocale(LC_ALL, 'de_DE'); 
bindtextdomain("app", "./lang"); 
textdomain("app"); 

echo gettext("Welcome"); 
echo _('Hier you can find stuff about me.'); 

的app.mo是./lang/de_DE/LC_MESSAGES/

的文字是沒有得到翻譯我沒有收到任何錯誤消息。

+2

一個有趣的gettext替代方法是['Zend_Translate'](http://framework.zend.com/manual/en/zend.translate.html)。 – 2010-11-09 09:19:26

+0

「Hier你可以找到關於我的東西」是一個有趣的翻譯... – Tokk 2010-11-09 09:26:28

+1

@Tokk:這是真的denglisch ;-) – Boldewyn 2010-11-09 09:29:45

回答

7

您是否檢查過de_DE是否作爲語言環境安裝?

請用locale -a覈對。

如果不是,請使用locale-gen de_DE生成它。

+0

就是這樣!萬分感謝! – MnomrAKostelAni 2010-11-18 08:32:59

+0

你在哪裏做這個?我需要在命令提示符下鍵入這個嗎? – 2014-11-19 09:29:05

+0

我遇到了與問題相同的問題。我在哪裏可以放置'locale -a'? – 2015-04-16 08:55:12