Welcome to php club

PHP и GetText. FAQ 

  • Скажите, а можно узнать, в чем реальное удобство Get Text??
  • Э, народ, а под Win 32?, как мне эту красоту заставить работать?
  • Где найти сочетания букв для каждого языка?
  • Поменял .mo файл. Изменений не произошло, что делать?

   Скажите, а можно узнать, в чем реальное удобство Get Text??   

  1. Изучив один раз сможешь использовать везде, не только в php, ибо стандарт.
  2. Будешь понимать чужие проекты ибо все серьезные php проекты сейчас использут gettext или переписываются под его использование.
  3. Сможешь воспользоваться уже имеющимися программами и библиотеками, которые существенно ускорят твою работу. Например xgettext.
  4. Облегчишь жизнь переводчику-лингвисту, если он чистый лингвист, не компьютерщик. Сейчас уже есть пакеты, которые автоматизирут труд.
  5. Освобождает наши скрипты от языкозависимых данных, точнее нам не надо будет заботиться о том, с каким языком будут работать наши скрипты.
  6. Предлагает набор утилит для работы с языковыми данными.
  7. Разработки сторонних авторов позволяют в значительной степени облегчить труд переводчиков и стандартизировать данные.
  8. Очень важная особенность, если вы по каким-то причинам не перевели те или иные строки, скажем, на китайский, то Get Text? вернем вам их на языке поумолчанию (обычно английский), что очень удобно, так как освобождает нас от полного перевода всех текстов.

   Э, народ, а под Win 32?, как мне эту красоту заставить работать?   

  1. Для получения нужных нам файлов идем сюда: http://sourceforge.net/projects/gettext. На этой странице вы найдете два пакета программ: gettext-win32 и libiconv-win32. Первый – это собственно файлы Get Text?, второй – это утилита для работы с текстом в разных кодировках, которая таже требуется для нормальной работы Get Text?. Вам необходимо скачать файлы: gettext-runtime-0.13.1.bin.woe32.zip (это уже скомпилированные под Windows файлы Get Text?) и gettext-tools-0.13.1.bin.woe32.zip (это скомпилированные вспомогательные утилиты), а также libiconv-1.9.1.bin.woe32.zip (это скомпилированные файлы iconv).
  2. Для дальнейшей установки нам понадобятся файлы: gettext-runtime-0.13.1.bin.woe32.zip и libiconv-1.9.1.bin.woe32.zip.
  3. Скопируйте файлы intl.dll, gettext.exe, asprintf.dll, envsubst.exe, ngettext.exe из первого пакета в папку SYSTEM32 вашей Windows, затем тоже самое проделайте с файлами charset.dll, iconv.dll, iconv.exe из второго пакета.
  4. Теперь перейдите в папку dlls вашей инсталляции PHP и скопируйте из нее файл libintl-1.dll в туже папку, что и предыдущие файлы.
  5. Далее, найдите php.ini (как правило он находится в папке WINDOWS вашей системы). Раскомментируйте в нем 2 строки: extension=php_gettext.dll (чтобы включить поддержку Get Text?) и extension=php_iconv.dll (чтобы включить поддержку iconv). Теперь перезапустите ваш сервер (например, Apache) и посмотрите phpinfo();. PHP сообщит вам, что Get Text? и iconv расширения подключены и включены (enabled).
  6. У нас остался еще один пакет: gettext-tools-0.13.1.bin.woe32.zip. Создайте на своем диске отдельную папку и распакуйте эти утилиты туда.

   Где найти сочетания букв для каждого языка?   

  1. Для правильного нахождения двухбуквенного сочетания для каждого языка воспользуйтесь этой таблицей: http://www.loc.gov/standards/iso639–2/langcodes.html, или документацией по Get Text?.

   Поменял .mo файл. Изменений не произошло, что делать?   

  1. Такой эффект чаще всего проявляется на Windows, на Linux, как правило, все нормально.
  2. Необходимо перезапустить сервер Apache.

 
Комментариев нет. [Показать комментарии/форму]