m6d*_*vin 4 php template-engine symfony twig
我将3种语言的数据传递给twig模板,并以这种方式显示这些数据:
{% set lang=app.request.get("lang")%}
{% for item in contests%}
{% if lang=="fa"%}
{{item.titlefa}}
{% elseif lang=="en"%}
{{item.titleen}}
{% elseif lang=="ar"%}
{{item.titlear}}
{% endif%}
{% endfor%}
Run Code Online (Sandbox Code Playgroud)
它是wirking但我必须为"竞赛"中的每个对象创建3条件如何在此逻辑中显示数据:
{% set lang=app.request.get("lang")%}
{{item.title~lang}}
{% endfor%}
Run Code Online (Sandbox Code Playgroud)
在比赛中可以称之为正确的方法
您可以使用属性 TWIG函数在运行时调用方法名称,例如:
{% set lang=app.request.get("lang")%}
{% methodname = 'title'~lang %}
{% for item in contests%}
{{ attribute(item, methodname) }}
{% endfor%}
Run Code Online (Sandbox Code Playgroud)
希望这有帮助