Фильтр merge

 

 

Фильтр merge сливает два массива вместе:

 

{% set values = [1, 2] %}

{% set values = values|merge(['apple', 'orange']) %}

{# values now contains [1, 2, 'apple', 'orange'] #}

 

Новые значения добавляются в конце существующих. 

 

Фильтр merge также работает с хешами:

 

{% set items = { 'apple': 'fruit', 'orange': 'fruit', 'peugeot': 'unknown' } %}

{% set items = items|merge({ 'peugeot': 'car', 'renault': 'car' }) %}

{# items now contains { 'apple': 'fruit', 'orange': 'fruit', 'peugeot': 'car', 'renault': 'car' } #}

 

 

Для хэшей, процесс слияния происходит по ключам: если ключ не существует, он будет добавлен, но если ключ уже существует, его значение переопределяется.

 

Если вы хотите убедиться, что некоторые значения определены в массиве (с заданными значениями по умолчанию), поменяйте местами два элемента в вызове:

{% set items = { 'apple': 'fruit', 'orange': 'fruit' } %}

{% set items = { 'apple': 'unknown' }|merge(items) %}

{# items now contains { 'apple': 'fruit', 'orange': 'fruit' } #}

подписаться на рассылку

Я согласен на обработку моих данных

© Компания “Edgestile” 2004-2018 г.

Политика конфинденциальности