Laravel Collections Now Include A Partition Method

News

December 15th, 2016

Laravel Collections Now Include A Partition Method

A new feature that just arrived in Laravel 5.3 is a new Collection Partition method that allows you to separate results into two elements.

$collection = collect([1, 2, 3, 4, 5, 6, 7]);
 
$items = $collection->partition(function ($i) {
return $i < 4;
});

Now $items will be a collection containing two items. The first is a collection of items that passed the callback, and the second for the ones that did not.

Here is a look at the results from the code above called through print_r:

Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => 1
[1] => 2
[2] => 3
)
 
)
 
[1] => Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[3] => 4
[4] => 5
[5] => 6
[6] => 7
)
 
)
 
)
 
)

This method is available starting at v5.3.27 and you can run composer update to get the latest.

Filed in:

Eric L. Barnes

Eric is the creator of Laravel News and has been covering Laravel since 2012.