я захотел создать перевод с русского на английский своих php-скриптов средствами gettext, но столкнулся с проблемой что не могу создать файлы перевода утилитой XGetText, точнеее не могу её запустить пример файла вот my_script.php PHP: <?php echo _('Строка перевода 1'); print (_('Строка перевода 2')); ?> сколько не искал везде написана команда Код (Text): xgettext my_script.php но не написанно где запускать и как запускать подскажите пожалуйста!!!!!!
вобще-то так не делается в принципе, поэтому может это знак, что не надо рвать себе жопу, корячась в неправильном направлении?
хех))))))))) это самое простое решение! я заморочился именно чтобы создать файлы перевода, но чего то не понимаю(((( вот и прошу помощи
Alex_@ ты перепишешь 10 проектов раньше чем напишешь автопереводилку. по сути-то надо только куски с выводом текста поменять на ченить типа массивов и прочего
да мне не надо переводилку свою писать я хочу создать файл перевода а у меня не получается!!))) вот и хочу разобраться в чём дело!
Я нашёл следующее Код (Text): Для начала надо скачать набор утилит xgettext для windows. Далее сохраняем свой скрипт в .kvs файл или файлы и в той папку, где сохранили делаем: Код: xgettext -o myscript.pot -ktr файл1.kvs файл2.kvs .... файлN.kvs В файлах уже должны быть расставлены $tr функции. на выходе увидим myscript.pot, который переименовываем в myscript_XX.po, где XX - код языка, например myscript_ru.po Редактируем этот файл с помощью poedit (тоже надо скачать). И, наконец, делаем Код: msgfmt -o myscript_ru.mo myscript_ru.po И получаем требуемый myscript_ru.mo. я не понимаю следующее Далее сохраняем свой скрипт в .kvs файл или файлы и в той папку, где сохранили делаем: Код: xgettext -o myscript.pot -ktr файл1.kvs файл2.kvs .... файлN.kvs может мне объяснить эти строчки????
в код вместо текста ставится $lang['hello']['ru'] где $lang - массив текстовых данных запрошенный из бд, hello - строка в бд (id текстового элемента), ru - поле со значением на русском языке.