如何使用变量处理树枝文件中的翻译?
Posted
技术标签:
【中文标题】如何使用变量处理树枝文件中的翻译?【英文标题】:How to handle Translation in twig file using variables? 【发布时间】:2012-02-02 08:10:51 【问题描述】:我有一个 twig 文件和一个 yml,我在其中定义了用于翻译的变量
例如:
YML 文件 -variable.for.translation: Disponible, para tí
Twig 文件的内容 -
<h2>"Hola, Follow variableName en Twitter</h2>
我想为
做一个变量Hola, Follow variableName en Twitter
在翻译文件(即我的 yml 文件)中。 目前我正在这样做: 在 YML 中 -
follow.us.twitter: Hola, Follow
follow.us.twitter1: en Twitter
在树枝上 -
<h2> "follow.us.twitter"|trans([], "workend") variableName "follow.us.twitter1"|trans([], "workend") </h2>
它工作正常,但问题是我现在在一根树枝中有 3 个变量太多了:
1. follow.us.twitter
2. follow.us.twitter1
3. variableName
我试着用一个变量来做,像这样:
follow.us.in.twitter : Hola, Follow variableName en Twitter
and
<h2> "follow.us.in.twitter"|trans([], "workend") </h2>
但它没有用。问题是 我正在使用的变量,即 variableName 。
有没有办法处理一个预定义的变量并在翻译文件中定义它?
【问题讨论】:
【参考方案1】:你走在正确的轨道上,你错过的只是将 someVariable
作为 参数 传递给你的 Twig 文件中的 trans():
<h2> "follow.us.in.twitter"|trans('%someVariable%': someVariable, "workend") </h2>
现在您在 Yml 文件中的信息应该是:
follow.us.in.twitter: Hola, Follow %someVariable% en Twitter
这应该可行。 有关更多详细信息和清晰度,您可以参考以下内容: Symfony Book
祝你好运。
【讨论】:
如果我将许多参数传递给 twig,Twig 不能只使用整个数组而不将它们定义为 trans 吗?因此,如果我有: reminder.Email|trans('%firstName%' : firstName, '%lastName%' : lastName, '%siteUrl%' : siteUrl)
为什么不能只映射整个数组,它将用于将 %var% 替换为 var?
如果换成这个会更好.. '%variableName%': variableName ===> '%variableName%': variableValue以上是关于如何使用变量处理树枝文件中的翻译?的主要内容,如果未能解决你的问题,请参考以下文章