@elian.swift
Для разделения коллекции на части по n штук в Laravel можно использовать метод chunk
:
1 2 3 4 5 |
$collection = collect([1, 2, 3, 4, 5, 6, 7, 8, 9]); $chunks = $collection->chunk(3); $chunks->toArray(); |
В этом примере коллекция будет разделена на части по 3 элемента, и результат будет представлен в виде коллекции коллекций. Если вы хотите получить результат в виде массива, вы можете вызвать метод toArray()
после метода chunk
.
Вы также можете передать колбэк-функцию в метод chunk
, чтобы выполнить дополнительную обработку каждой части коллекции:
1 2 3 4 5 6 7 8 9 |
$collection = collect([1, 2, 3, 4, 5, 6, 7, 8, 9]); $chunks = $collection->chunk(3, function ($chunk) { return $chunk->map(function ($item) { return $item * 2; }); }); $chunks->toArray(); |
В этом примере каждая часть коллекции будет умножена на 2.