[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Не могу заставить gettext() переводить строки
kav1
Здравствуйте.

Поставил себе задачу сделать простенькую локализацию для небольшого сайта на самописном движке. Пробую переводить строки в простом примере с помощью gettext(), но пока безрезультатно. ОС debian, gettext установлен. Вот простой пример:



<?php
// устанавливаем язык локализации
putenv('LC_ALL=ru_RU');
setlocale(LC_ALL, 'ru_RU');


bindtextdomain("app", "./locale");


// выбираем нащ домен
textdomain("app");

$pofilename = './locale/ru_RU/LC_MESSAGES/app.po';
$mofilename = './locale/ru_RU/LC_MESSAGES/app.mo';


if (file_exists($pofilename))
{
echo "Файл перевода .po существует<br>";
}
else
{
echo "Файл перевода .po не существует<br>";
}


if (file_exists($mofilename))
{
echo "Файл перевода .mo существует<br>";
}
else
{
echo "Файл перевода .mo не существует, создадим его<br>";
exec("msgfmt ./locale/ru_RU/LC_MESSAGES/app.po -o ./locale/ru_RU/LC_MESSAGES/app.mo");

}

// пробуем перевод
echo gettext("Welcome to Mother Russia");
echo "<br>";

// пробуем через альяс (_)
echo _("Hi there");
echo "<br>";
?>


Содержимое .po файла:

 # translation to ru_RU
msgid ""
msgstr ""
"Project-Id-Version: app\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 3.0\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Language-Team: \n"
"Language: ru\n"

msgid "Welcome to Mother Russia"
msgstr "Добро пожаловать в Россию"

msgid "Hi there"
msgstr "Привет всем"



В итоге при запуске скрипта я вижу непереведенные строки. Что я делаю не так? Скрипт "test.php" и папка "/locale" находятся на одном уровне, то есть в одной директории, .po и .mo файлы расположены внутри папки "/locale/ru_RU/LC_MESSAGES/", генерация .mo файла с помощью msgfmt также успешно выполняется...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.