Мне нужно преобразовать всю строку эха/печати из файла исходного кода php в файл PO (для перевода языка), есть ли какие-либо пакетный конвектор доступен для одного и того же.
исходный код php для генератора файлов PO
Ответы (4)
Как я это делаю:
- заставить gettext работать на вашем сервере
- настроить адаптер перевода (например, Zend_Translate с адаптером gettext)
- используйте хороший инструмент поиска, чтобы найти все строки в вашем коде и обернуть их чем-то вроде $translationObject->translate(). Часто метод оборачивают для вызова __(). В большинстве случаев это будет, по крайней мере, частично ручная работа, поскольку у вас будут различные формы строк, которые вы, возможно, также захотите разбить на более короткие единицы.
- установите poEdit и настройте его на синтаксический анализ для 'translate(' или '__('
- отправьте полученные po-файлы людям-переводчикам и проинструктируйте их, как использовать poEdit
- загружать переводы и генерировать mo-файлы, которые используются адаптером
Вам нужен http://www.poedit.net/
Вы можете использовать Poedit для сканирования исходного кода на наличие переводимых строк.
echo
или print
.
- person chelmertz; 11.11.2009
К сожалению, я не думаю, что такой инструмент существует. Если вы найдете его, он, вероятно, будет ограничен в функциональности.
Это связано со способностью php смешиваться с html. Трудно знать, что именно должно быть включено в конкретный файл gettext.
Если вы используете операторы «echo» только для отправки контента в браузер и никогда не смешиваете html и php, то довольно просто написать скрипт для его анализа.
HTH, -FT
Да, я получил ответ.
Существует метод извлечения всей строки из исходного файла для папки. Вот ссылка, которую вы можете проверить:
Извлеките строки из исходного кода для перевода (для po-файла) [ссылка не работает]
Poedit: кроссплатформенный конвертер PO в MO и редактор файлов PO [ссылка не работает]