المرشح filter في Twig
< Twig
المرشح filter
يرشح العناصر من تسلسل أو ربط (mapping) باستخدام دالة سهمية تستقبل القيمة من ذلك التسلسل أو الربط:
{% set sizes = [34, 36, 38, 40, 42] %}
{{ sizes|filter(v => v > 38)|join(', ') }}
{# output 40, 42 #}
وهو يسمح -مع الوسم for
- بترشيح العناصر التي يراد التكرار عليها:
{% for v in sizes|filter(v => v > 38) -%}
{{ v }}
{% endfor %}
{# output 40 42 #}
كما يعمل مع الربط أيضًا:
{% set sizes = {
xs: 34,
s: 36,
m: 38,
l: 40,
xl: 42,
} %}
{% for k, v in sizes|filter(v => v > 38) -%}
{{ k }} = {{ v }}
{% endfor %}
{# output l = 40 xl = 42 #}
تستقبل الدالة السهمية المفتاح كوسيط ثاني:
{% for k, v in sizes|filter((v, k) => v > 38 and k != "xl") -%}
{{ k }} = {{ v }}
{% endfor %}
{# output l = 40 #}
لاحظ أن الدالة السهمية لها وصول إلى السياق الحالي.
الوسائط
array
: التسلسل أو الربط.arrow
: الدالة السهمية.