当我使用纯 PHP 时,我只是这样做:
printf(_("Hello %s !"), $name);
现在有了 Twig,我必须使用 trans 标签。所以我复制/粘贴了 documentation example ,这是我的完整模板:
{% extends 'MyAppBundle::layout.html.twig' %}
{% block content %}
<h1>
{% trans %}
Hello {{ name }}!
{% endtrans %}
</h1>
{% endblock %}
为什么 Symfony 会返回以下异常?
A message must be a simple text in "MyAppBundle::home.html.twig"
500 Internal Server Error - Twig_Error_Syntax
最佳答案
上一个答案缺少的一点是替换消息的可变部分所需的“with”部分。
{% trans with {'%name%':name} %}Hello %name%!{% endtrans %}
关于php - Symfony2+Twig,翻译中的变量返回 "A message must be a simple text",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7811162/