Gettext, PHP и Windows 2008
У меня есть сервер Windows 2008 (установлен на итальянском языке). Это работает Zend Server CE 5.1, который является Apache2.2 и PHP 5.3.5.
Я создал этот простой скрипт:
putenv("LC_ALL=de_DE");
bindtextdomain('messages', './langs');
textdomain('messages');
echo _("Hello world");
Каталоги:
/lang
/it_IT
/LC_MESSAGES
/messages.mo
/messages.po
/de_DE
/LC_MESSAGES
/messages.mo
/messages.po
То, что я получаю, это итальянское сообщение, а не немецкое. Кажется, что putenv()
не имеет никакого эффекта Обратите внимание, что структура языкового каталога правильная, так как it_IT
файл правильно загружен.
Как я могу загрузить немецкий перевод?
1 ответ
Решение
Не все локали поддерживаются в Windows. Кроме того, названия локали также различаются в Windows. Поддерживаемые языки и регионы перечислены на сайтах Microsoft. Если вы разрабатываете на машине с Windows, а ваш рабочий сервер на Linux, я думаю, вам следует рассмотреть возможность использования Zend_Translate