有条件的长度

Length with condition

我知道 twig 可以使用 {{ array|length}} 计算数组的元素,但是有没有办法将此功能与 ifwhere 语句结合起来?

类似于 {{ array|length|array.key is null }},它会计算 keynull 的所有实例。

filter 过滤器应该可以帮助您实现这一目标。

类似

{% set array = [null, 42, null, null, 42] %}

{{ array | filter(item => item is null) | length }}

输出3


因此,如果我正确理解您的数据结构:

{% set array = [{key:  null}, {key:  42}, {key: null}, {key: null}, {key: 
 42}] %}

{{ array | filter(item => item.key is null) | length }}