Когда я делал простой PHP, я просто делал это:
printf(_("Hello %s !"), $name);
Теперь с Twig я должен использовать тэг trans. Поэтому я скопирую / вставлю пример документации , и вот мой полный шаблон:
{% extends 'MyAppBundle::layout.html.twig' %} {% block content %} <h1> {% trans %} Hello {{ name }}! {% endtrans %} </h1> {% endblock %}
Почему Symfony возвращает следующее освобождение?
Сообщение должно быть простым текстом в «MyAppBundle :: home.html.twig»
500 Внутренняя ошибка сервера – Twig_Error_Syntax
Точный синтаксис для переводов немного отличается в Symfony2, чем в автономном Twig. Вы захотите ознакомиться с документацией Symfony2 для переводов в шаблонах twig, найденных здесь . Правильный синтаксис будет выглядеть примерно так:
{% trans %}Hello %name%!{% endtrans %}
Один недостающий бит с предыдущим ответом – это часть «с», необходимая для замены переменной части сообщения.
{% trans with {'%name%':name} %}Hello %name%!{% endtrans %}