В Laravel коллекции предоставляют удобный способ работы с массивами данных. Часто вам может потребоваться объединить или добавить один массив в другой внутри коллекции. В этой статье мы рассмотрим несколько методов достижения этой цели, а также примеры кода. Давайте погрузимся!
Метод 1: merge()
Метод merge()объединяет заданный массив с текущей коллекцией. Он возвращает новый экземпляр коллекции, содержащий объединенные данные.
$collection = collect(['apple', 'banana']);
$newArray = ['orange', 'grape'];
$mergedCollection = $collection->merge($newArray);
Метод 2: concat()
Метод concat()объединяет заданный массив в конец текущей коллекции. Он изменяет коллекцию на месте.
$collection = collect(['apple', 'banana']);
$newArray = ['orange', 'grape'];
$collection->concat($newArray);
Метод 3: Union()
Метод union()создает новую коллекцию, добавляя заданный массив в текущую коллекцию. Он удаляет все повторяющиеся значения.
$collection = collect(['apple', 'banana']);
$newArray = ['orange', 'banana'];
$unionCollection = $collection->union($newArray);
Метод 4: push()
Метод push()добавляет элементы в конец коллекции. Он изменяет коллекцию на месте.
$collection = collect(['apple', 'banana']);
$newArray = ['orange', 'grape'];
$collection->push(...$newArray);
Метод 5: prepend()
Метод prepend()добавляет элементы в начало коллекции. Он изменяет существующую коллекцию.
$collection = collect(['apple', 'banana']);
$newArray = ['orange', 'grape'];
$collection->prepend(...$newArray);
Метод 6: mergeRecursive()
Метод mergeRecursive()рекурсивно объединяет два или более массивов. Это полезно при работе с вложенными массивами.
$collection = collect(['fruits' => ['apple', 'banana']]);
$newArray = ['fruits' => ['orange', 'grape']];
$mergedCollection = $collection->mergeRecursive($newArray);
Метод 7: offsetSet()
Метод offsetSet()позволяет установить значение для определенного смещения в коллекции.
$collection = collect(['apple', 'banana']);
$newArray = ['orange', 'grape'];
$collection->offsetSet(null, $newArray);
В этой статье мы рассмотрели семь различных методов добавления массива к другому массиву в коллекции Laravel. В зависимости от вашего конкретного случая использования вы можете выбрать наиболее подходящий метод для ваших нужд. Эти методы обеспечивают гибкость и простоту работы с коллекциями в Laravel.