У меня есть проблемы с получением GetText работать на Windows Server 2008 R2, PHP 5.5PHP Gettext не работает на Windows Server 2008, PHP 5.5
я сделать следующее в моем PHP скрипт:
$language = 'NB';
putenv("LANG=".$language);
putenv("LC_ALL=".$language);
setlocale(LC_ALL, $language);
$domain = 'messages';
bindtextdomain($domain, 'C:/path_to_translations/translations');
textdomain($domain);
Мои файлы перевода находятся в следующих каталогах:
C: /path_to_translations/translations/NB/LC_MESSAGES/messages.po C: /path_to_translations/translations/NB/LC_MESSAGES/messages.mo
Это отлично работает на моей машине с Windows 7 с php 5.3
Я предполагаю, что NB на самом деле не является допустимым именем языка в Windows, но setlocale (LC_ALL, «NB») по-прежнему возвращает «NB», а не FALSE. Тем не менее, чтобы узнать, может ли это иметь какое-то отношение к проблеме, я попытался установить $ language = 'norwegian', в случае case setlocale (LC_ALL, 'norwegian') возвращает 'Norwegian_Norway.1252' и попытался установить . пути к C: /path_to_translations/translations/norwegian/LC_MESSAGES/messages.mo и C: /path_to_translations/translations/Norwegian_Norway.1252/LC_MESSAGES/messages.mo, а также изменение кодировки в файлах .po и .mo из 'UTF -8 'до' Windows 1252 '. Тем не менее, я не могу получить перевод для работы на компьютере с Windows Server 2008 R2, PHP 5.5.
Любая помощь МНОГО оценили!