المرشح filter في 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: الدالة السهمية.

انظر أيضًا

المصادر