2009-08-28 2 views
2

Как gettext переводит строковые переменные? Кажется, он не хочет этого делать. Скажем, у меня есть $ sentence = «Hello World»; и затем я хочу откликнуться ($ предложение); ... как я могу сделать это, чтобы я мог перевести то, что внутри $ предложения в Poedit? Я могу использовать -> echo sprintf ( («% s test»), $ предложение), и это напечатает «Hello World test» в браузер, но он появится как «% s test» в Poedit, и я не получу переведенную версию Hello World внутри Poedit. Итак, как я могу использовать строковые переменные внутри Poedit? Благодаря!php string variables в gettext

ответ

8

У вас просто не должно быть строковых переменных. Вы должны сделать, например.

$sentance = _('Hello world'); 

Другой способ заключается в использовании какого царя парсер, который будет в состоянии найти свой привет мир строк и, наконец, выход где-то

$fakie = _('Hello World'); 

Этот вывод должен храниться в некотором файле, который будет затем быть взято poedit и переведено. Для показа перевода вы не можете использовать

$myTranslation = _($sentance); 

Мы использовали этот процесс преобразования для javascript-файлов и шаблонов smarty.

+0

Большое спасибо, это именно то, что мне нужно – Kentor

+0

Что делать, если у вас есть foreach, идущий с переменной, которая определяется сотнями разных способов? – compguy24