РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1032 of 1392 menu

Метод zip

Метод zip применяется к коллекции и объединяет её элементы с элементами других коллекций или массивов, переданных в качестве аргументов. Первым параметром передаётся одна или несколько коллекций или массивов для объединения. Метод возвращает новую коллекцию, содержащую массивы, где на каждой позиции находятся соответствующие элементы из исходной коллекции и переданных коллекций. Если переданные коллекции короче исходной, недостающие элементы заменяются на null.

Синтаксис

<?php collect($items)->zip($collection1, $collection2, ...); ?>

Пример

Давайте объединим коллекцию чисел с коллекцией строк:

<?php use Illuminate\Support\Collection; $numbers = collect([1, 2, 3, 4, 5]); $letters = collect(['a', 'b', 'c', 'd', 'e']); $res = $numbers->zip($letters); echo $res; ?>

Результат выполнения кода:

[ [1, "a"], [2, "b"], [3, "c"], [4, "d"], [5, "e"] ]

Пример

Давайте объединим коллекцию с несколькими коллекциями одновременно:

<?php use Illuminate\Support\Collection; $primary = collect(['a', 'b', 'c']); $secondary = collect([1, 2, 3]); $tertiary = collect(['x', 'y', 'z']); $res = $primary->zip($secondary, $tertiary); echo $res; ?>

Результат выполнения кода:

[ ["a", 1, "x"], ["b", 2, "y"], ["c", 3, "z"] ]

Пример

Давайте посмотрим, что происходит, когда переданные коллекции имеют разную длину:

<?php use Illuminate\Support\Collection; $first = collect([1, 2, 3, 4]); $second = collect(['a', 'b']); $res = $first->zip($second); echo $res; ?>

Результат выполнения кода:

[ [1, "a"], [2, "b"], [3, null], [4, null] ]

Пример

Давайте объединим коллекцию с обычным массивом:

<?php use Illuminate\Support\Collection; $users = collect(['user1', 'user2', 'user3']); $ages = [25, 30, 35]; $res = $users->zip($ages); echo $res; ?>

Результат выполнения кода:

[ ["user1", 25], ["user2", 30], ["user3", 35] ]

Смотрите также

  • метод merge,
    который объединяет коллекции
  • метод concat,
    который добавляет элементы в конец коллекции
  • метод combine,
    который создаёт коллекцию из ключей и значений
  • метод collapse,
    который преобразует многомерную коллекцию в одномерную
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить