Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Gettext - не заводится
Форумы портала PHP.SU » » Если скрипт не работает » Gettext - не заводится

Страниц (1): [1]
 

1. baltun - 02 Марта, 2015 - 14:15:30 - перейти к сообщению
не работает перевод Недовольство, огорчение

выводит "string"
должно выводить "строка"

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. // Задаем текущий язык проекта
  4. putenv("LANG=ru_RU");
  5.  
  6. // Задаем текущую локаль (кодировку)
  7. setlocale (LC_MESSAGES,"Russian");
  8.  
  9. // Указываем имя домена
  10. $domain = 'messages';
  11.  
  12. // Задаем каталог домена, где содержатся переводы
  13. bindtextdomain ($domain, "./locale");
  14.  
  15. // Выбираем домен для работы
  16.  
  17. textdomain ($domain);
  18.  
  19. // Если необходимо, принудительно указываем кодировку
  20. // (эта строка не обязательна, она нужна,
  21. // если вы хотите выводить текст в отличной
  22. // от текущей локали кодировке).
  23. bind_textdomain_codeset($domain, 'UTF-8');
  24.  
  25. echo _('string');
  26. ?>


файлы messages.po, messages.mo, default.po, default.mo лежат в подпапке /locale/ru/LC_MESSAGES/

первая пара файлов сделана с помощью xgettext + msgfmt
вторая пара файлов - с помощью poedit

default.po:
CODE (htmlphp):
скопировать код в буфер обмена
  1. msgid ""
  2. msgstr ""
  3. "Project-Id-Version: testsite.lo 1.0\n"
  4. "POT-Creation-Date: 2015-03-01 22:24+0300\n"
  5. "PO-Revision-Date: 2015-03-01 22:27+0300\n"
  6. "Last-Translator: Илья <info@gsoft.ru>\n"
  7. "Language-Team: Agamaya <info@gsoft.ru>\n"
  8. "Language: Russian\n"
  9. "MIME-Version: 1.0\n"
  10. "Content-Type: text/plain; charset=UTF-8\n"
  11. "Content-Transfer-Encoding: 8bit\n"
  12. "X-Generator: Poedit 1.5.4\n"
  13. "X-Poedit-KeywordsList: _;gettext;gettext_noop\n"
  14. "X-Poedit-Basepath: .\n"
  15. "X-Poedit-SourceCharset: UTF-8\n"
  16. "X-Poedit-SearchPath-0: .\n"
  17.  
  18. #: index.php:28 index.php:29 index.php:30 index.php:31
  19. msgid "string"
  20. msgstr "строка"


messages.po:
CODE (htmlphp):
скопировать код в буфер обмена
  1. # SOME DESCRIPTIVE TITLE.
  2. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
  3. # This file is distributed under the same license as the PACKAGE package.
  4. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
  5. #
  6. #, fuzzy
  7. msgid ""
  8. msgstr ""
  9. "Project-Id-Version: PACKAGE VERSION\n"
  10. "Report-Msgid-Bugs-To: \n"
  11. "POT-Creation-Date: 2015-03-01 21:51+0300\n"
  12. "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
  13. "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
  14. "Language-Team: LANGUAGE <LL@li.org>\n"
  15. "Language: \n"
  16. "MIME-Version: 1.0\n"
  17. "Content-Type: text/plain; charset=CHARSET\n"
  18. "Content-Transfer-Encoding: 8bit\n"
  19.  
  20. #: index.php:2 index.php:3 index.php:4 index.php:5
  21. msgid "string"
  22. msgstr "строка"

 

Powered by ExBB FM 1.0 RC1