Twig

灵活、快速且安全的
PHP 模板引擎

a Symfony Product
您正在阅读 Twig 3.x 的文档。切换到 Twig 1.x, 2.x 的文档。

问题和反馈

许可

Twig 文档 根据新的 BSD 许可 获得许可。

find

3.11

find 过滤器在 Twig 3.11 中添加。

find 过滤器返回序列中与箭头函数匹配的第一个元素。箭头函数接收序列的值

1
2
3
4
{% set sizes = [34, 36, 38, 40, 42] %}

{{ sizes|find(v => v > 38) }}
{# output 40 #}

它也适用于映射

1
2
3
4
5
6
7
8
9
10
11
12
{% set sizes = {
    xxs: 32,
    xs:  34,
    s:   36,
    m:   38,
    l:   40,
    xl:  42,
} %}

{{ sizes|find(v => v > 38) }}

{# output 40 #}

箭头函数还会接收键作为第二个参数

1
2
3
{{ sizes|find((v, k) => 's' not in k) }}

{# output 38 #}

请注意,箭头函数可以访问当前上下文

1
2
3
4
5
{% set my_size = 39 %}

{{ sizes|find(v => v >= my_size) }}

{# output 40 #}

参数

  • array: 序列或映射
  • arrow: 箭头函数