الفرق بين المراجعتين لصفحة: «Twig/filter»
< Twig
أسامه-دمراني (نقاش | مساهمات) 1.0: إضافة عنوان الصفحة. |
أسامه-دمراني (نقاش | مساهمات) 2.0 محتوى الصفحة |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: المرشح filter في Twig}}</noinclude> | <noinclude>{{DISPLAYTITLE: المرشح filter في Twig}}</noinclude> | ||
ال{{DISPLAYTITLE: المرشح filter في Twig}}مرشح <code>filter</code> يرشح العناصر من تسلسل أو ربط (mapping) باستخدام دالة سهمية تستقبل القيمة من ذلك التسلسل أو الربط:<syntaxhighlight lang="twig"> | |||
{% set sizes = [34, 36, 38, 40, 42] %} | |||
{{ sizes|filter(v => v > 38)|join(', ') }} | |||
{# output 40, 42 #} | |||
</syntaxhighlight>وه{{DISPLAYTITLE: المرشح filter في Twig}}و يسمح -مع الوسم <code>for</code>- بترشيح العناصر التي يراد التكرار عليها:<syntaxhighlight lang="twig"> | |||
{% for v in sizes|filter(v => v > 38) -%} | |||
{{ v }} | |||
{% endfor %} | |||
{# output 40 42 #} | |||
</syntaxhighlight>كما يعمل مع الربط أيضًا:<syntaxhighlight lang="twig"> | |||
{% 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 #} | |||
</syntaxhighlight>تستقبل الدالة السهمية المفتاح كوسيط ثاني:<syntaxhighlight lang="twig"> | |||
{% for k, v in sizes|filter((v, k) => v > 38 and k != "xl") -%} | |||
{{ k }} = {{ v }} | |||
{% endfor %} | |||
{# output l = 40 #} | |||
</syntaxhighlight> | |||
<blockquote>لاحظ أن الدالة السهمية لها وصول إلى السياق الحالي.</blockquote> | |||
== الوسائط == | |||
* <code>array</code>: التسلسل أو الربط. | |||
* <code>arrow</code>: الدالة السهمية. | |||
== انظر أيضًا == | |||
* [[Twig/intro|مقدمة عن محرك القوالب Twig.]] | |||
* [[Twig/advanced|توسيع Twig.]] | |||
* [[Twig/internals|المكونات الداخلية لـ Twig.]] | |||
* [[Twig/tags|الوسوم في Twig]] | |||
* [[ Twig/filters|المرشحات في Twig]] | |||
== المصادر == | |||
* [https://twig.symfony.com/doc/3.x/filters/filter.html صفحة توثيق المرشح filter في توثيق Twig الرسمي]. | |||
[[تصنيف:Twig]] | |||
[[تصنيف:Twig Filters]] |
مراجعة 14:41، 2 مايو 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
: الدالة السهمية.