2012-03-14 2 views
1

Мне нужно перевести части текста (в прутьях).перевод текста с разделителем symfony2

Нечто подобное:

// page.html.twig 

    ... 
    {{ text | trans ({}, 'MyprojectMyBundle')}} 

Supos переменная 'текст' есть строка: "Значение находится в диапазоне от 5 до 10"

В переводе arquive у меня есть:

// Project/MyBundle/Resources/Translations/MyprojectMyBundle.pt_BR.yml 

... 
Value is between and : "Valor está entre e" 

Как могу ли я убрать числа (5 и 10) в переводе? мне нужно:

Значение между 5 и 10 -> Valor está Entre 5 е 10

Значение между 50 и 60 -> Valor está Entre 50 е 60

и т.д ...

ответ

0

вы можете использовать заполнители, так и в файле перевода вы бы:

// Project/MyBundle/Resources/Translations/MyprojectMyBundle.pt_BR.yml 

... 
Value is between %min% and %max%: "Valor está entre %min% e %max%" 

, а затем в шаблоне вы можете использовать следующее:

{{ text | trans({'%min%': '5', '%max%': '10'}, "MyprojectMyBundle") }} 

где текст = «Значение между% мин% и% макс%»

+0

но мин и макс будет меняться каждый раз, когда – Munir

+0

Да, вы можете заменить «5» и «10» с переменными шаблона которые содержат значения, например {{text | trans ({'% min%': minval, '% max%': maxval}, "MyprojectMyBundle")}} – user1207727

+0

Работает! Но теперь «текст» представляет собой массив с («текст», «мин», «макс»). Поэтому я могу назвать {{text.text | trans ({'% min%': 'text.min', '% max%': 'text.max'}, "MyprojectMyBundle")}} Thx! – Munir

Смежные вопросы