الفرق بين المراجعتين لصفحة: «Twig/merge»
< Twig
جميل-بيلوني (نقاش | مساهمات) طلا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) لا ملخص تعديل |
||
سطر 14: | سطر 14: | ||
</syntaxhighlight>لكن بالنسبة للجداول hashes فإن عملية الدمج تحدث على المفاتيح، فإن المفتاح يضاف إذا لم يكن موجودًا، وإن كان موجودًا فيتم استبدال قيمته. كذلك، يُعكس العنصران اللذان في الاستدعاء لضمان تعريف بعض القيم في مصفوفة ما -بالقيم الافتراضية المعطاة-:<syntaxhighlight lang="twig"> | </syntaxhighlight>لكن بالنسبة للجداول hashes فإن عملية الدمج تحدث على المفاتيح، فإن المفتاح يضاف إذا لم يكن موجودًا، وإن كان موجودًا فيتم استبدال قيمته. كذلك، يُعكس العنصران اللذان في الاستدعاء لضمان تعريف بعض القيم في مصفوفة ما -بالقيم الافتراضية المعطاة-:<syntaxhighlight lang="twig"> | ||
xxxxxxxxxx {% set items = { 'apple': 'fruit', 'orange': 'fruit' } %}{% set items = { 'apple': 'unknown' }|merge(items) %}{# { 'apple': 'fruit', 'orange': 'fruit' } القيم الآن فيها #} | xxxxxxxxxx {% set items = { 'apple': 'fruit', 'orange': 'fruit' } %}{% set items = { 'apple': 'unknown' }|merge(items) %}{# { 'apple': 'fruit', 'orange': 'fruit' } القيم الآن فيها #} | ||
</syntaxhighlight>لاحظ أن Twig يستخدم دالة <code>[[PHP/array merge|array_merge]]</code> الخاصة بلغة [[PHP]]، وهي تدعم الكائنات القابلة للمرور على عناصرها | </syntaxhighlight>لاحظ أن Twig يستخدم دالة <code>[[PHP/array merge|array_merge]]</code> الخاصة بلغة [[PHP]]، وهي تدعم الكائنات القابلة للمرور على عناصرها traversable إذ تحولها إلى مصفوفات. | ||
== انظر أيضًا == | == انظر أيضًا == |
المراجعة الحالية بتاريخ 06:25، 11 مايو 2021
المرشح merge
يدمج مصفوفتين معًا، وتضاف القيم الجديدة في نهاية السرد:
{% set values = [1, 2] %}
{% set values = values|merge(['apple', 'orange']) %}
{# [1, 2, 'apple', 'orange'] القيم الآن فيها #}
كذلك فإن المرشح merge
يصلح استخدامه في حالة الجداول hashes:
{% set items = { 'apple': 'fruit', 'orange': 'fruit', 'peugeot': 'unknown' } %}
{% set items = items|merge({ 'peugeot': 'car', 'renault': 'car' }) %}
{# { 'apple': 'fruit', 'orange': 'fruit', 'peugeot': 'car', 'renault': 'car' } القيم تحتوي الآن #}
لكن بالنسبة للجداول hashes فإن عملية الدمج تحدث على المفاتيح، فإن المفتاح يضاف إذا لم يكن موجودًا، وإن كان موجودًا فيتم استبدال قيمته. كذلك، يُعكس العنصران اللذان في الاستدعاء لضمان تعريف بعض القيم في مصفوفة ما -بالقيم الافتراضية المعطاة-:
xxxxxxxxxx {% set items = { 'apple': 'fruit', 'orange': 'fruit' } %}{% set items = { 'apple': 'unknown' }|merge(items) %}{# { 'apple': 'fruit', 'orange': 'fruit' } القيم الآن فيها #}
لاحظ أن Twig يستخدم دالة array_merge
الخاصة بلغة PHP، وهي تدعم الكائنات القابلة للمرور على عناصرها traversable إذ تحولها إلى مصفوفات.