Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Twig 将数组名称固定为动态_Twig - Fatal编程技术网

Twig 将数组名称固定为动态

Twig 将数组名称固定为动态,twig,Twig,我想将固定数组名更改为动态数组名。 在一段时间内 set item_classes = [ item.original_link.nid and item.original_link.p6 and item.original_link.in_active_trail ? 'active', ] 这是因为“nid”和p6是相同且唯一的 在项中。原始链接数组中有19个值: 'nid' => string(3) "114" - Node ID 'bid' =

我想将固定数组名更改为动态数组名。 在一段时间内

set item_classes = [
          item.original_link.nid and item.original_link.p6 and item.original_link.in_active_trail ? 'active',
        ]
这是因为“nid”和p6是相同且唯一的

项中。原始链接数组中有19个值:

'nid' => string(3) "114" - Node ID
'bid' => string(3) "100"
'pid' => string(3) "111"
'has_children' => string(1) "0"
'weight' => string(1) "0"
'depth' => string(1) "3" - Page Depth
'p1' => string(3) "100"
'p2' => string(3) "111"
'p3' => string(3) "114" - P+Depth
'p4' => string(1) "0"
'p5' => string(1) "0"
'p6' => string(1) "0"
'p7' => string(1) "0"
'p8' => string(1) "0"
'p9' => string(1) "0"
'in_active_trail' => boolTRUE
'access' => boolTRUE
'title' => string(21) "Development.twig.html"
'options' => array(0)
我需要将项.original_link.p6的值设置为动态值:“p+depth”

如本例所示,该值为item.original\u link.p3

我希望我已经解释了足够的细节,有人来帮助我或给我方向

我添加了一个集合变量,如下所示:

        {% set my_var = [ ('p' ~ item.original_link.depth ), ] %}
        {% set item_classes = [ item.original_link.nid and item.original_link.my_var and item.original_link.in_active_trail ? 'is_active', ] %}
这为我提供了所需的动态变量,但当我在下一个集合中使用此变量时,如下所示:

        {% set my_var = [ ('p' ~ item.original_link.depth ), ] %}
        {% set item_classes = [ item.original_link.nid and item.original_link.my_var and item.original_link.in_active_trail ? 'is_active', ] %}

它返回NULL

这是否回答了您的问题?谢谢你的建议,但我不知道如何使用语句中的属性引用我的变量my_var。我添加了一个set变量如下:
twig{%set my_var=[('p'~item.original_link.depth),]%}
这给了我所需的动态变量,但是当我在下一个集合中使用它时,如下所示:
twig{%set item_classes=[item.original_link.nid和item.original_link.my_var和item.original_link.in_active_trail.'is_active':'not_active',]%}
它返回空值。你真的读过里面的答案吗?您需要使用
属性(item.original\U link,my\U var)
现在您正在尝试引用确实不存在的属性
my\U var
。是的,我确实阅读了建议,经过一些尝试和错误,我使用了这个
item.original\u link.nid和属性(item.original\u link,my\u var)和item.original\u link.in\u active\u trail?“是活动的,
这正是您在评论中的内容。非常感谢