php – Twig:打印变量名为String的变量的值

我有一个名为eg的变量var1,其值为value1为字符串.

如何打印变量var1的值,其中var1是作为字符串获得的?

{{ set container = 'var1' }}

变量容器的值是动态的.根据容器的价值,我需要打印它的价值;在这种情况下,我需要打印’value1′.

我正在寻找这样的东西

{{attribute(this,container)}} / *< =这不会因为没有在Twig中定义* /

最佳答案 事实证明我错了.

您可以使用包含传递给模板的所有变量的_context变量.

试试{{dump(_context)}}

Relevant Documentation

您可以创建一个传递此上下文的函数,并使用数组键来访问该值.

这个枝条功能应该工作正常:

public function getAttribute($context, $key)
{
    if (!array_key_exists($key, $context)) {
        return '';
    }

    return $context[$key];
}

变量传递title = foo,另一个变量传递refTitle = title,这应该输出“foo”.

{{ attribute(_context, refTitle) }}
点赞