首页 > 后端开发 > php教程 > 如何动态访问 Twig 变量名?

如何动态访问 Twig 变量名?

Susan Sarandon
发布: 2024-11-06 12:42:02
原创
459 人浏览过

How to Dynamically Access Twig Variable Names?

动态访问 Twig 变量名称

在 Twig 中访问具有动态名称的变量可能是一个挑战。考虑以下场景:

<p>placeholder1
placeholder2
placeholderx
</p>

<pre class="brush:php;toolbar:false">{% for invoices as invoice %}
    need to display here the placeholder followed by the invoice id number
    {{ placeholedr1 }}
登录后复制

使用上下文数组访问变量

您可以使用括号表示法访问 _context 数组中的变量值,而不是使用属性函数:

{{ _context['placeholder' ~ id] }}
登录后复制

这个选项更简洁,可以说更清晰。

严格变量检查

当环境选项中 strict_variables 设置为 true 时,您可能会遇到不存在变量的错误。要处理此问题,请使用默认过滤器:

{{ _context['placeholder' ~ id]|default }}

{{ attribute(_context, 'placeholder' ~ id)|default }}
登录后复制

检查变量是否存在

要在访问变量之前检查变量是否存在,请使用定义的测试:

{% if _context['placeholder' ~ id] is defined %} ... {% endif %}
登录后复制

使用默认过滤器的默认值

使用 |default:

{{ _context['placeholder' ~ id]|default(null) }}

{{ attribute(_context, 'placeholder' ~ id)|default('Default value') }}
登录后复制
提供默认值,以防变量不存在

以上是如何动态访问 Twig 变量名?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板