2010-11-09 8 views
6

Ho installato il pacchetto php-gettext e phpinfo() mostra che gettext è abilitato.gettext not translating

mio app.po assomiglia:

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

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

Il mio file php assomiglia:

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.'); 

L'app.mo è in ./lang/de_DE/LC_MESSAGES/

Il testo non è sempre tradotta e Non ricevo alcun messaggio di errore.

+2

Un'alternativa interessante per gettext è [ 'Zend_Translate'] (http://framework.zend.com/manual/en/zend.translate.html). –

+0

"Hier si possono trovare cose su di me" è una traduzione interessante ... – Tokk

+1

@Tokk: Questo è vero Denglisch ;-) – Boldewyn

risposta

7

Avete controllato se de_DE è installato come locale?

Controllare con locale -a.

In caso contrario, generarla con locale-gen de_DE.

+0

E 'stato! Grazie mille! – MnomrAKostelAni

+0

Dove lo fai? Devo digitare questo nel prompt dei comandi? –

+0

Sto avendo lo stesso problema come la questione. Dove metto '-a' locali? –