Заполнители Gettext

Я создаю многоязычное приложение на PHP + CodeIgniter. Я решил использовать gettext для перевода текста пользовательского интерфейса, и до сих пор он оказался эффективным и простым в работе.

Но теперь я столкнулся с чем-то действительно неприятным: функция gettext () принимает только один параметр, в то время как я хотел бы поведение, подобное printf, которое я получаю от адаптера gettext Zend Framework, где я могу использовать % 1 $ s , % 2 $ s и т. д. в качестве заполнителей а затем укажите заменяющие строки в качестве дополнительных параметров функции translate () Zend view.

Я не хочу отказываться от gettext из-за простого управления переводом с помощью файлов .po и poEdit (я могу его получить в конце концов, обновляется одним щелчком мыши). Какие у меня есть варианты?

Я уже пробовал написать помощник для взаимодействия с gettext: прогоните первый аргумент через gettext, а затем запустите strtr для полученной строки. Вы бы порекомендовали какие-либо другие / лучшие подходы?

5
задан mingos 26 March 2011 в 22:37
поделиться