November 20, 2016 —John Koster
The array_sort
function (discussed in the Laravel Array Helper Function: array_sort article) internally creates a new instance of the \Illuminate\Support\Collection
class with the given $array
and then calls the collection's sortBy(callable $callback = null)
method with the given $callback
. It then converts the sorted collection into an array by calling the collection's all()
method. In short, this function creates a new object every time it is invoked.
Because of this function's internal behavior, code should never be written like the following:
1<?php2 3// Create a new collection, using the 'Collect' helper.4$collection = collect(['second', 'first', 'third']);5$sorted = array_sort($collection->all());
Instead, it is preferable to just use the collection's sortBy
method directly:
1<?php2 3$collection = collect(['second', 'first', 'third']);4$sorted = $collection->sortBy();
∎
The following amazing people help support this site and my open source projects ♥️
If you're interesting in supporting my work and want to show up on this list, check out my GitHub Sponsors Profile.