الفرق بين المراجعتين ل"Twig/filter"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(2.0 محتوى الصفحة)
ط
 
(مراجعة متوسطة واحدة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE: المرشح filter في Twig}}</noinclude>
 
<noinclude>{{DISPLAYTITLE: المرشح filter في Twig}}</noinclude>
ال{{DISPLAYTITLE: المرشح filter في Twig}}مرشح <code>filter</code> يرشح العناصر من تسلسل أو ربط (mapping) باستخدام دالة سهمية تستقبل القيمة من ذلك التسلسل أو الربط:<syntaxhighlight lang="twig">
+
المرشح <code>filter</code> يرشح العناصر من تسلسل أو ربط mapping باستخدام دالة سهمية تستقبل القيمة من ذلك التسلسل أو الربط:
 +
{{DISPLAYTITLE: المرشح filter في Twig}}<syntaxhighlight lang="twig">
 
{% set sizes = [34, 36, 38, 40, 42] %}
 
{% set sizes = [34, 36, 38, 40, 42] %}
  
 
{{ sizes|filter(v => v > 38)|join(', ') }}
 
{{ sizes|filter(v => v > 38)|join(', ') }}
 
{# output 40, 42 #}
 
{# output 40, 42 #}
</syntaxhighlight>وه{{DISPLAYTITLE: المرشح filter في Twig}}و يسمح -مع الوسم <code>for</code>- بترشيح العناصر التي يراد التكرار عليها:<syntaxhighlight lang="twig">
+
</syntaxhighlight>وهو يسمح -مع الوسم <code>[[Twig/for|for]]</code>- بترشيح العناصر التي يراد التكرار عليها:
 +
{{DISPLAYTITLE: المرشح filter في Twig}}<syntaxhighlight lang="twig">
 
{% for v in sizes|filter(v => v > 38) -%}
 
{% for v in sizes|filter(v => v > 38) -%}
 
     {{ v }}
 
     {{ v }}
سطر 37: سطر 39:
  
 
== انظر أيضًا ==
 
== انظر أيضًا ==
* [[Twig/intro|مقدمة عن محرك القوالب Twig.]]
+
* [[Twig/intro|مقدمة عن محرك القوالب Twig]]
* [[Twig/advanced|توسيع Twig.]]
+
* [[Twig/advanced|توسيع Twig]]
* [[Twig/internals|المكونات الداخلية لـ Twig.]]
+
* [[Twig/internals|المكونات الداخلية لـ Twig]]
 
* [[Twig/tags|الوسوم في Twig]]
 
* [[Twig/tags|الوسوم في Twig]]
 
* [[ Twig/filters|المرشحات في Twig]]
 
* [[ Twig/filters|المرشحات في Twig]]

المراجعة الحالية بتاريخ 06:18، 11 مايو 2021

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

انظر أيضًا

المصادر