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

Другие вопросы по тегам