访问动态 Twig 变量
Twig 提供了多种访问动态变量名称的方法,为访问模板中的数据提供了灵活性。
一种方法涉及使用对象数组并循环遍历它们。但是,在尝试使用 {{ placeholder1 }} 显示带有发票 ID 号的占位符时,您可能会遇到挑战。
通过上下文数组访问解决方案
而不是使用属性函数中,您可以使用括号表示法访问 _context 数组中的值:
{{ _context['placeholder' ~ id] }}
此语法可以简洁明了地访问变量。
默认值处理
要处理 strict_variables 设置为 true 时可能不存在的变量,请考虑使用带 _context 的默认过滤器:
{{ _context['placeholder' ~ id]|default }} {{ attribute(_context, 'placeholder' ~ id)|default }}
这可确保您不会因缺少变量而遇到运行时错误。
变量存在验证
要验证变量是否存在,请使用定义的测试:
{% if _context['placeholder' ~ id] is defined %} ... {% endif %}
自定义默认值
要在变量丢失时提供自定义默认值,请向默认过滤器添加参数:
{{ _context['placeholder' ~ id]|default(null) }} {{ attribute(_context, 'placeholder' ~ id)|default('Default value') }}
建议将 strict_variables 设置为 true,以防止因拼写错误或缺少变量而导致的意外错误。
以上是如何访问动态 Twig 变量并处理缺失值?的详细内容。更多信息请关注PHP中文网其他相关文章!