getText не работает (локализация сайта) - PullRequest
0 голосов
/ 01 мая 2018

Я пытаюсь сделать сайт локализуемым на нескольких языках. Я использую XAMPP для тестирования переводов. Проблема в том, что строка «Текст не переведен» не изменяется, и я уже пробовал несколько решений. Я уже изменил строку в php.ini, который включает / отключает функцию gettext. Вот мой тестовый сайт проекта:

htdocs/Traduzioni/Locale/it-IT/LC_MESSAGES/

Под LC_MESSAGES есть 2 файла с именем: - messages.po; - messages.mo

<?php
   $language = "it-it";
   putenv("LANG=".$language);
   setlocale(LC_ALL, $language);

   $domain = "messages";
   bindtextdomain($domain, "C:\xampp\htdocs\Traduzioni\Locale");
   textdomain($domain);

   echo gettext("Text not translated");
?>

^ Это содержимое файла index.php, содержащегося в папке Traduzioni.

msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: it_IT\n"
"X-Generator: Poedit 2.0.7\n"

# Test1
msgid "Text not translated"
msgstr "Testo tradotto"

^ А это содержимое файла messages.po в папке it-it.

Я уже пытался перезапустить Apache и попробовал функцию function_exists, чтобы убедиться, что пакет установлен правильно.

Я использую этот сервер в Windows (10). Заранее спасибо:)

...