Actualmente estoy desarrollando una aplicación web PHP que debe estar disponible en francés e inglés. Miré a mi alrededor y descubrí que la funcionalidad Gettext() ofrece el mejor rendimiento.Internacionalización de aplicaciones web Php con Gettext();
me genera mi archivo .pot con el comando
xgettext PhpFileToTranslate.php -o NameOfTemplateFile.pot
y generó exitosamente un archivo .pot. he usado para generar PoEdit archivo messages.po y crearon messages.mo
Éstos son mis archivos del servidor:
/app
/locale
/en_US
/LC_MESSAGES
messages.po
messages.mo
/fr_FR
/LC_MESSAGES
messages.po
messages.mo
template.pot
Y i establecer la configuración regional en el archivo php como esta:
$language = $_SESSION['language']; //session contains 'fr_FR.UTF-8' or 'en_US.UTF-8'
setlocale(LC_ALL, $language);
bindtextdomain('messages', './locale');
textdomain('messages');
pero solo veo la etiqueta y no la traducción ... He intentado poner 'fr_FR' en lugar de 'fr_FR.UTF-8' y todo tipo de cadenas, pero no está funcionando.
¿Echo de menos algo? Mi servidor es Ubuntu 12.04 Servidor con Apache y php5
De hecho, no tuve fr_FR.utf8 instalar en mi computadora y en mi servidor ... ¡Ahora funciona! Muchas gracias por la ayuda. –