получить текст PHP5 не работает на Debian - PullRequest
2 голосов
/ 04 ноября 2011

Я разрабатываю веб-сайт, который использует gettext.Все отлично работает на местном.Но сегодня я загрузил свой веб-сайт на свой рабочий сервер, и gettext больше не хочет работать.Язык, который я хотел бы использовать, это fr_FR и en_US.gettext переводит мой текст, если я показываю свой веб-сайт на французском, но для англичан ничего не происходит.

Когда я выполняю locale -a на моем сервере Debian, я получаю:

C
fr_FR.utf8
POSIX

Я француз, поэтому я думаю, что все нормально.Но когда я делаю: locale-gen en_US или locale-gen en_US.UTF-8 и затем locale -a снова, ничего не меняется.!Это нормально?

Вот пример PHP-кода на всякий случай.Но так как gettext работает для французского языка, я думаю, что проблема не в этом.

$langage = 'en_US.utf8';
putenv("LC_ALL=$langage"); 
setlocale(LC_ALL, $langage); 

$languageFileName = "default"; // locale/en_US/LC_MESSAGES/default.mo
bindtextdomain($languageFileName, PATH.'/locale'); 
bind_textdomain_codeset($languageFileName, 'UTF-8');
textdomain($languageFileName);

Заранее большое спасибо за помощь.

Ответы [ 2 ]

5 голосов
/ 16 мая 2012

Ну, я нашел решение своей проблемы.Я отредактировал файл / etc / locale.gen и раскомментировал язык, который я хотел бы использовать с gettext.Затем я запустил locale-gen .Вот и все!

Все еще не понимаю, почему locale-gen en_US.UTF-8 не сделал то же самое.Я использую Debian 6 Squeeze.

0 голосов
/ 04 ноября 2011

Вам нужно на расширение php php_gettext.

...