Twig 细枝:获取满足条件的第一项

Twig 细枝:获取满足条件的第一项,twig,Twig,我需要显示满足某些条件的第一项。我通常会通过构造这样的伪代码: for(item in some_array) if(some_condition(item)) { some_action(); break; } 问题是我需要在TWIG中这样做,TWIG不允许中断for循环。那么怎么做呢?您可以使用布尔值表示您已经处理了第一项,但它将继续在数组的其余部分循环: set firstItemProcessed = false; for(item in some_array)

我需要显示满足某些条件的第一项。我通常会通过构造这样的伪代码:

for(item in some_array)
  if(some_condition(item)) {
    some_action();
    break;
  }

问题是我需要在TWIG中这样做,TWIG不允许中断for循环。那么怎么做呢?

您可以使用布尔值表示您已经处理了第一项,但它将继续在数组的其余部分循环:

set firstItemProcessed = false;
for(item in some_array) {
    if(firstItemProcessed == false and some_condition(item) ) {
       some_action();
       firstItemProcessed = true;
    }
}

考虑在控制器中查找项目或者写一个TUNG过滤器/函数来做这件事,这是行进的方式,但是在枝条语法中