W3cubDocs

/Laravel 5.8

Collection

class Collection implements ArrayAccess, Arrayable, Countable, IteratorAggregate, Jsonable, JsonSerializable (View source)

Traits

Macroable

Properties

static protected array $macros The registered string macros. from Macroable
protected array $items The items contained in the collection.
static protected array $proxies The methods that can be proxied.

Methods

static void macro(string $name, object|callable $macro)

Register a custom macro.

from Macroable
static void mixin(object $mixin, bool $replace = true)

Mix another object into the class.

from Macroable
static bool hasMacro(string $name)

Checks if macro is registered.

from Macroable
static mixed __callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

from Macroable
mixed __call(string $method, array $parameters)

Dynamically handle calls to the class.

from Macroable
void __construct(mixed $items = [])

Create a new collection.

static Collection make(mixed $items = [])

Create a new collection instance if the value isn't one already.

static Collection wrap(mixed $value)

Wrap the given value in a collection if applicable.

static array unwrap(array|Collection $value)

Get the underlying items from the given collection if applicable.

static Collection times(int $number, callable $callback = null)

Create a new collection by invoking the callback a given amount of times.

array all()

Get all of the items in the collection.

mixed avg(callable|string|null $callback = null)

Get the average value of a given key.

mixed average(callable|string|null $callback = null)

Alias for the "avg" method.

mixed median(string|array|null $key = null)

Get the median of a given key.

array|null mode(string|array|null $key = null)

Get the mode of a given key.

Collection collapse()

Collapse the collection of items into a single array.

bool some(mixed $key, mixed $operator = null, mixed $value = null)

Alias for the "contains" method.

bool contains(mixed $key, mixed $operator = null, mixed $value = null)

Determine if an item exists in the collection.

bool containsStrict(mixed $key, mixed $value = null)

Determine if an item exists in the collection using strict comparison.

Collection crossJoin(mixed ...$lists)

Cross join with the given lists, returning all possible permutations.

void dd(mixed ...$args)

Dump the collection and end the script.

$this dump()

Dump the collection.

Collection diff(mixed $items)

Get the items in the collection that are not present in the given items.

Collection diffUsing(mixed $items, callable $callback)

Get the items in the collection that are not present in the given items.

Collection diffAssoc(mixed $items)

Get the items in the collection whose keys and values are not present in the given items.

Collection diffAssocUsing(mixed $items, callable $callback)

Get the items in the collection whose keys and values are not present in the given items.

Collection diffKeys(mixed $items)

Get the items in the collection whose keys are not present in the given items.

Collection diffKeysUsing(mixed $items, callable $callback)

Get the items in the collection whose keys are not present in the given items.

Collection duplicates(callable|null $callback = null, bool $strict = false)

Retrieve duplicate items from the collection.

Collection duplicatesStrict(callable|null $callback = null)

Retrieve duplicate items from the collection using strict comparison.

Closure duplicateComparator(bool $strict)

Get the comparison function to detect duplicates.

$this each(callable $callback)

Execute a callback over each item.

Collection eachSpread(callable $callback)

Execute a callback over each nested chunk of items.

bool every(string|callable $key, mixed $operator = null, mixed $value = null)

Determine if all items in the collection pass the given test.

Collection except(Collection|mixed $keys)

Get all items except for those with the specified keys.

Collection filter(callable $callback = null)

Run a filter over each of the items.

Collection|mixed when(bool $value, callable $callback, callable $default = null)

Apply the callback if the value is truthy.

Collection|mixed whenEmpty(callable $callback, callable $default = null)

Apply the callback if the collection is empty.

Collection|mixed whenNotEmpty(callable $callback, callable $default = null)

Apply the callback if the collection is not empty.

Collection|mixed unless(bool $value, callable $callback, callable $default = null)

Apply the callback if the value is falsy.

Collection|mixed unlessEmpty(callable $callback, callable $default = null)

Apply the callback unless the collection is empty.

Collection|mixed unlessNotEmpty(callable $callback, callable $default = null)

Apply the callback unless the collection is not empty.

Collection where(string $key, mixed $operator = null, mixed $value = null)

Filter items by the given key value pair.

Closure operatorForWhere(string $key, string $operator = null, mixed $value = null)

Get an operator checker callback.

Collection whereStrict(string $key, mixed $value)

Filter items by the given key value pair using strict comparison.

Collection whereIn(string $key, mixed $values, bool $strict = false)

Filter items by the given key value pair.

Collection whereInStrict(string $key, mixed $values)

Filter items by the given key value pair using strict comparison.

Collection whereBetween(string $key, array $values)

Filter items such that the value of the given key is between the given values.

Collection whereNotBetween(string $key, array $values)

Filter items such that the value of the given key is not between the given values.

Collection whereNotIn(string $key, mixed $values, bool $strict = false)

Filter items by the given key value pair.

Collection whereNotInStrict(string $key, mixed $values)

Filter items by the given key value pair using strict comparison.

Collection whereInstanceOf(string $type)

Filter the items, removing any items that don't match the given type.

mixed first(callable $callback = null, mixed $default = null)

Get the first item from the collection passing the given truth test.

mixed firstWhere(string $key, mixed $operator = null, mixed $value = null)

Get the first item by the given key value pair.

Collection flatten(int $depth = INF)

Get a flattened array of the items in the collection.

Collection flip()

Flip the items in the collection.

$this forget(string|array $keys)

Remove an item from the collection by key.

mixed get(mixed $key, mixed $default = null)

Get an item from the collection by key.

Collection groupBy(array|callable|string $groupBy, bool $preserveKeys = false)

Group an associative array by a field or using a callback.

Collection keyBy(callable|string $keyBy)

Key an associative array by a field or using a callback.

bool has(mixed $key)

Determine if an item exists in the collection by key.

string implode(string $value, string $glue = null)

Concatenate values of a given key as a string.

Collection intersect(mixed $items)

Intersect the collection with the given items.

Collection intersectByKeys(mixed $items)

Intersect the collection with the given items by key.

bool isEmpty()

Determine if the collection is empty or not.

bool isNotEmpty()

Determine if the collection is not empty.

bool useAsCallable(mixed $value)

Determine if the given value is callable, but not a string.

string join(string $glue, string $finalGlue = '')

Join all items from the collection using a string. The final items can use a separate glue string.

Collection keys()

Get the keys of the collection items.

mixed last(callable $callback = null, mixed $default = null)

Get the last item from the collection.

Collection pluck(string|array $value, string|null $key = null)

Get the values of a given key.

Collection map(callable $callback)

Run a map over each of the items.

Collection mapSpread(callable $callback)

Run a map over each nested chunk of items.

Collection mapToDictionary(callable $callback)

Run a dictionary map over the items.

Collection mapToGroups(callable $callback)

Run a grouping map over the items.

Collection mapWithKeys(callable $callback)

Run an associative map over each of the items.

Collection flatMap(callable $callback)

Map a collection and flatten the result by a single level.

Collection mapInto(string $class)

Map the values into a new class.

mixed max(callable|string|null $callback = null)

Get the max value of a given key.

Collection merge(mixed $items)

Merge the collection with the given items.

Collection mergeRecursive(mixed $items)

Recursively merge the collection with the given items.

Collection combine(mixed $values)

Create a collection by using this collection for keys and another for its values.

Collection union(mixed $items)

Union the collection with the given items.

mixed min(callable|string|null $callback = null)

Get the min value of a given key.

Collection nth(int $step, int $offset = 0)

Create a new collection consisting of every n-th element.

Collection only(mixed $keys)

Get the items with the specified keys.

Collection forPage(int $page, int $perPage)

"Paginate" the collection by slicing it into a smaller collection.

Collection partition(callable|string $key, mixed $operator = null, mixed $value = null)

Partition the collection into two arrays using the given callback or key.

mixed pipe(callable $callback)

Pass the collection to the given callback and return the result.

mixed pop()

Get and remove the last item from the collection.

$this prepend(mixed $value, mixed $key = null)

Push an item onto the beginning of the collection.

$this push(mixed $value)

Push an item onto the end of the collection.

Collection concat(iterable $source)

Push all of the given items onto the collection.

mixed pull(mixed $key, mixed $default = null)

Get and remove an item from the collection.

$this put(mixed $key, mixed $value)

Put an item in the collection by key.

Collection|mixed random(int|null $number = null)

Get one or a specified number of items randomly from the collection.

mixed reduce(callable $callback, mixed $initial = null)

Reduce the collection to a single value.

Collection reject(callable|mixed $callback = true)

Create a collection of all elements that do not pass a given truth test.

Collection replace(mixed $items)

Replace the collection items with the given items.

Collection replaceRecursive(mixed $items)

Recursively replace the collection items with the given items.

Collection reverse()

Reverse items order.

mixed search(mixed $value, bool $strict = false)

Search the collection for a given value and return the corresponding key if successful.

mixed shift()

Get and remove the first item from the collection.

Collection shuffle(int $seed = null)

Shuffle the items in the collection.

Collection slice(int $offset, int $length = null)

Slice the underlying collection array.

Collection split(int $numberOfGroups)

Split a collection into a certain number of groups.

Collection chunk(int $size)

Chunk the underlying collection array.

Collection sort(callable $callback = null)

Sort through each item with a callback.

Collection sortBy(callable|string $callback, int $options = SORT_REGULAR, bool $descending = false)

Sort the collection using the given callback.

Collection sortByDesc(callable|string $callback, int $options = SORT_REGULAR)

Sort the collection in descending order using the given callback.

Collection sortKeys(int $options = SORT_REGULAR, bool $descending = false)

Sort the collection keys.

Collection sortKeysDesc(int $options = SORT_REGULAR)

Sort the collection keys in descending order.

Collection splice(int $offset, int|null $length = null, mixed $replacement = [])

Splice a portion of the underlying collection array.

mixed sum(callable|string|null $callback = null)

Get the sum of the given values.

Collection take(int $limit)

Take the first or last {$limit} items.

$this tap(callable $callback)

Pass the collection to the given callback and then return it.

$this transform(callable $callback)

Transform each item in the collection using a callback.

Collection unique(string|callable|null $key = null, bool $strict = false)

Return only unique items from the collection array.

Collection uniqueStrict(string|callable|null $key = null)

Return only unique items from the collection array using strict comparison.

Collection values()

Reset the keys on the underlying array.

callable valueRetriever(callable|string|null $value)

Get a value retrieving callback.

Collection zip(mixed $items)

Zip the collection together with one or more arrays.

Collection pad(int $size, mixed $value)

Pad collection to the specified length with a value.

array toArray()

Get the collection of items as a plain array.

array jsonSerialize()

Convert the object into something JSON serializable.

string toJson(int $options = 0)

Get the collection of items as JSON.

ArrayIterator getIterator()

Get an iterator for the items.

CachingIterator getCachingIterator(int $flags = CachingIterator::CALL_TOSTRING)

Get a CachingIterator instance.

int count()

Count the number of items in the collection.

Collection countBy(callable|null $callback = null)

Count the number of items in the collection using a given truth test.

$this add(mixed $item)

Add an item to the collection.

Collection toBase()

Get a base Support collection instance from this collection.

bool offsetExists(mixed $key)

Determine if an item exists at an offset.

mixed offsetGet(mixed $key)

Get an item at a given offset.

void offsetSet(mixed $key, mixed $value)

Set the item at a given offset.

void offsetUnset(string $key)

Unset the item at a given offset.

string __toString()

Convert the collection to its string representation.

array getArrayableItems(mixed $items)

Results array of items from Collection or Arrayable.

static void proxy(string $method)

Add a method to the list of proxied methods.

mixed __get(string $key)

Dynamically access collection proxies.

Details

static void macro(string $name, object|callable $macro)

Register a custom macro.

Parameters

string $name
object|callable $macro

Return Value

void

static void mixin(object $mixin, bool $replace = true)

Mix another object into the class.

Parameters

object $mixin
bool $replace

Return Value

void

Exceptions

ReflectionException

static bool hasMacro(string $name)

Checks if macro is registered.

Parameters

string $name

Return Value

bool

static mixed __callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

mixed __call(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

void __construct(mixed $items = [])

Create a new collection.

Parameters

mixed $items

Return Value

void

static Collection make(mixed $items = [])

Create a new collection instance if the value isn't one already.

Parameters

mixed $items

Return Value

Collection

static Collection wrap(mixed $value)

Wrap the given value in a collection if applicable.

Parameters

mixed $value

Return Value

Collection

static array unwrap(array|Collection $value)

Get the underlying items from the given collection if applicable.

Parameters

array|Collection $value

Return Value

array

static Collection times(int $number, callable $callback = null)

Create a new collection by invoking the callback a given amount of times.

Parameters

int $number
callable $callback

Return Value

Collection

array all()

Get all of the items in the collection.

Return Value

array

mixed avg(callable|string|null $callback = null)

Get the average value of a given key.

Parameters

callable|string|null $callback

Return Value

mixed

mixed average(callable|string|null $callback = null)

Alias for the "avg" method.

Parameters

callable|string|null $callback

Return Value

mixed

mixed median(string|array|null $key = null)

Get the median of a given key.

Parameters

string|array|null $key

Return Value

mixed

array|null mode(string|array|null $key = null)

Get the mode of a given key.

Parameters

string|array|null $key

Return Value

array|null

Collection collapse()

Collapse the collection of items into a single array.

Return Value

Collection

bool some(mixed $key, mixed $operator = null, mixed $value = null)

Alias for the "contains" method.

Parameters

mixed $key
mixed $operator
mixed $value

Return Value

bool

bool contains(mixed $key, mixed $operator = null, mixed $value = null)

Determine if an item exists in the collection.

Parameters

mixed $key
mixed $operator
mixed $value

Return Value

bool

bool containsStrict(mixed $key, mixed $value = null)

Determine if an item exists in the collection using strict comparison.

Parameters

mixed $key
mixed $value

Return Value

bool

Collection crossJoin(mixed ...$lists)

Cross join with the given lists, returning all possible permutations.

Parameters

mixed ...$lists

Return Value

Collection

void dd(mixed ...$args)

Dump the collection and end the script.

Parameters

mixed ...$args

Return Value

void

$this dump()

Dump the collection.

Return Value

$this

Collection diff(mixed $items)

Get the items in the collection that are not present in the given items.

Parameters

mixed $items

Return Value

Collection

Collection diffUsing(mixed $items, callable $callback)

Get the items in the collection that are not present in the given items.

Parameters

mixed $items
callable $callback

Return Value

Collection

Collection diffAssoc(mixed $items)

Get the items in the collection whose keys and values are not present in the given items.

Parameters

mixed $items

Return Value

Collection

Collection diffAssocUsing(mixed $items, callable $callback)

Get the items in the collection whose keys and values are not present in the given items.

Parameters

mixed $items
callable $callback

Return Value

Collection

Collection diffKeys(mixed $items)

Get the items in the collection whose keys are not present in the given items.

Parameters

mixed $items

Return Value

Collection

Collection diffKeysUsing(mixed $items, callable $callback)

Get the items in the collection whose keys are not present in the given items.

Parameters

mixed $items
callable $callback

Return Value

Collection

Collection duplicates(callable|null $callback = null, bool $strict = false)

Retrieve duplicate items from the collection.

Parameters

callable|null $callback
bool $strict

Return Value

Collection

Collection duplicatesStrict(callable|null $callback = null)

Retrieve duplicate items from the collection using strict comparison.

Parameters

callable|null $callback

Return Value

Collection

protected Closure duplicateComparator(bool $strict)

Get the comparison function to detect duplicates.

Parameters

bool $strict

Return Value

Closure

$this each(callable $callback)

Execute a callback over each item.

Parameters

callable $callback

Return Value

$this

Collection eachSpread(callable $callback)

Execute a callback over each nested chunk of items.

Parameters

callable $callback

Return Value

Collection

bool every(string|callable $key, mixed $operator = null, mixed $value = null)

Determine if all items in the collection pass the given test.

Parameters

string|callable $key
mixed $operator
mixed $value

Return Value

bool

Collection except(Collection|mixed $keys)

Get all items except for those with the specified keys.

Parameters

Collection|mixed $keys

Return Value

Collection

Collection filter(callable $callback = null)

Run a filter over each of the items.

Parameters

callable $callback

Return Value

Collection

Collection|mixed when(bool $value, callable $callback, callable $default = null)

Apply the callback if the value is truthy.

Parameters

bool $value
callable $callback
callable $default

Return Value

Collection|mixed

Collection|mixed whenEmpty(callable $callback, callable $default = null)

Apply the callback if the collection is empty.

Parameters

callable $callback
callable $default

Return Value

Collection|mixed

Collection|mixed whenNotEmpty(callable $callback, callable $default = null)

Apply the callback if the collection is not empty.

Parameters

callable $callback
callable $default

Return Value

Collection|mixed

Collection|mixed unless(bool $value, callable $callback, callable $default = null)

Apply the callback if the value is falsy.

Parameters

bool $value
callable $callback
callable $default

Return Value

Collection|mixed

Collection|mixed unlessEmpty(callable $callback, callable $default = null)

Apply the callback unless the collection is empty.

Parameters

callable $callback
callable $default

Return Value

Collection|mixed

Collection|mixed unlessNotEmpty(callable $callback, callable $default = null)

Apply the callback unless the collection is not empty.

Parameters

callable $callback
callable $default

Return Value

Collection|mixed

Collection where(string $key, mixed $operator = null, mixed $value = null)

Filter items by the given key value pair.

Parameters

string $key
mixed $operator
mixed $value

Return Value

Collection

protected Closure operatorForWhere(string $key, string $operator = null, mixed $value = null)

Get an operator checker callback.

Parameters

string $key
string $operator
mixed $value

Return Value

Closure

Collection whereStrict(string $key, mixed $value)

Filter items by the given key value pair using strict comparison.

Parameters

string $key
mixed $value

Return Value

Collection

Collection whereIn(string $key, mixed $values, bool $strict = false)

Filter items by the given key value pair.

Parameters

string $key
mixed $values
bool $strict

Return Value

Collection

Collection whereInStrict(string $key, mixed $values)

Filter items by the given key value pair using strict comparison.

Parameters

string $key
mixed $values

Return Value

Collection

Collection whereBetween(string $key, array $values)

Filter items such that the value of the given key is between the given values.

Parameters

string $key
array $values

Return Value

Collection

Collection whereNotBetween(string $key, array $values)

Filter items such that the value of the given key is not between the given values.

Parameters

string $key
array $values

Return Value

Collection

Collection whereNotIn(string $key, mixed $values, bool $strict = false)

Filter items by the given key value pair.

Parameters

string $key
mixed $values
bool $strict

Return Value

Collection

Collection whereNotInStrict(string $key, mixed $values)

Filter items by the given key value pair using strict comparison.

Parameters

string $key
mixed $values

Return Value

Collection

Collection whereInstanceOf(string $type)

Filter the items, removing any items that don't match the given type.

Parameters

string $type

Return Value

Collection

mixed first(callable $callback = null, mixed $default = null)

Get the first item from the collection passing the given truth test.

Parameters

callable $callback
mixed $default

Return Value

mixed

mixed firstWhere(string $key, mixed $operator = null, mixed $value = null)

Get the first item by the given key value pair.

Parameters

string $key
mixed $operator
mixed $value

Return Value

mixed

Collection flatten(int $depth = INF)

Get a flattened array of the items in the collection.

Parameters

int $depth

Return Value

Collection

Collection flip()

Flip the items in the collection.

Return Value

Collection

$this forget(string|array $keys)

Remove an item from the collection by key.

Parameters

string|array $keys

Return Value

$this

mixed get(mixed $key, mixed $default = null)

Get an item from the collection by key.

Parameters

mixed $key
mixed $default

Return Value

mixed

Collection groupBy(array|callable|string $groupBy, bool $preserveKeys = false)

Group an associative array by a field or using a callback.

Parameters

array|callable|string $groupBy
bool $preserveKeys

Return Value

Collection

Collection keyBy(callable|string $keyBy)

Key an associative array by a field or using a callback.

Parameters

callable|string $keyBy

Return Value

Collection

bool has(mixed $key)

Determine if an item exists in the collection by key.

Parameters

mixed $key

Return Value

bool

string implode(string $value, string $glue = null)

Concatenate values of a given key as a string.

Parameters

string $value
string $glue

Return Value

string

Collection intersect(mixed $items)

Intersect the collection with the given items.

Parameters

mixed $items

Return Value

Collection

Collection intersectByKeys(mixed $items)

Intersect the collection with the given items by key.

Parameters

mixed $items

Return Value

Collection

bool isEmpty()

Determine if the collection is empty or not.

Return Value

bool

bool isNotEmpty()

Determine if the collection is not empty.

Return Value

bool

protected bool useAsCallable(mixed $value)

Determine if the given value is callable, but not a string.

Parameters

mixed $value

Return Value

bool

string join(string $glue, string $finalGlue = '')

Join all items from the collection using a string. The final items can use a separate glue string.

Parameters

string $glue
string $finalGlue

Return Value

string

Collection keys()

Get the keys of the collection items.

Return Value

Collection

mixed last(callable $callback = null, mixed $default = null)

Get the last item from the collection.

Parameters

callable $callback
mixed $default

Return Value

mixed

Collection pluck(string|array $value, string|null $key = null)

Get the values of a given key.

Parameters

string|array $value
string|null $key

Return Value

Collection

Collection map(callable $callback)

Run a map over each of the items.

Parameters

callable $callback

Return Value

Collection

Collection mapSpread(callable $callback)

Run a map over each nested chunk of items.

Parameters

callable $callback

Return Value

Collection

Collection mapToDictionary(callable $callback)

Run a dictionary map over the items.

The callback should return an associative array with a single key/value pair.

Parameters

callable $callback

Return Value

Collection

Collection mapToGroups(callable $callback)

Run a grouping map over the items.

The callback should return an associative array with a single key/value pair.

Parameters

callable $callback

Return Value

Collection

Collection mapWithKeys(callable $callback)

Run an associative map over each of the items.

The callback should return an associative array with a single key/value pair.

Parameters

callable $callback

Return Value

Collection

Collection flatMap(callable $callback)

Map a collection and flatten the result by a single level.

Parameters

callable $callback

Return Value

Collection

Collection mapInto(string $class)

Map the values into a new class.

Parameters

string $class

Return Value

Collection

mixed max(callable|string|null $callback = null)

Get the max value of a given key.

Parameters

callable|string|null $callback

Return Value

mixed

Collection merge(mixed $items)

Merge the collection with the given items.

Parameters

mixed $items

Return Value

Collection

Collection mergeRecursive(mixed $items)

Recursively merge the collection with the given items.

Parameters

mixed $items

Return Value

Collection

Collection combine(mixed $values)

Create a collection by using this collection for keys and another for its values.

Parameters

mixed $values

Return Value

Collection

Collection union(mixed $items)

Union the collection with the given items.

Parameters

mixed $items

Return Value

Collection

mixed min(callable|string|null $callback = null)

Get the min value of a given key.

Parameters

callable|string|null $callback

Return Value

mixed

Collection nth(int $step, int $offset = 0)

Create a new collection consisting of every n-th element.

Parameters

int $step
int $offset

Return Value

Collection

Collection only(mixed $keys)

Get the items with the specified keys.

Parameters

mixed $keys

Return Value

Collection

Collection forPage(int $page, int $perPage)

"Paginate" the collection by slicing it into a smaller collection.

Parameters

int $page
int $perPage

Return Value

Collection

Collection partition(callable|string $key, mixed $operator = null, mixed $value = null)

Partition the collection into two arrays using the given callback or key.

Parameters

callable|string $key
mixed $operator
mixed $value

Return Value

Collection

mixed pipe(callable $callback)

Pass the collection to the given callback and return the result.

Parameters

callable $callback

Return Value

mixed

mixed pop()

Get and remove the last item from the collection.

Return Value

mixed

$this prepend(mixed $value, mixed $key = null)

Push an item onto the beginning of the collection.

Parameters

mixed $value
mixed $key

Return Value

$this

$this push(mixed $value)

Push an item onto the end of the collection.

Parameters

mixed $value

Return Value

$this

Collection concat(iterable $source)

Push all of the given items onto the collection.

Parameters

iterable $source

Return Value

Collection

mixed pull(mixed $key, mixed $default = null)

Get and remove an item from the collection.

Parameters

mixed $key
mixed $default

Return Value

mixed

$this put(mixed $key, mixed $value)

Put an item in the collection by key.

Parameters

mixed $key
mixed $value

Return Value

$this

Collection|mixed random(int|null $number = null)

Get one or a specified number of items randomly from the collection.

Parameters

int|null $number

Return Value

Collection|mixed

Exceptions

InvalidArgumentException

mixed reduce(callable $callback, mixed $initial = null)

Reduce the collection to a single value.

Parameters

callable $callback
mixed $initial

Return Value

mixed

Collection reject(callable|mixed $callback = true)

Create a collection of all elements that do not pass a given truth test.

Parameters

callable|mixed $callback

Return Value

Collection

Collection replace(mixed $items)

Replace the collection items with the given items.

Parameters

mixed $items

Return Value

Collection

Collection replaceRecursive(mixed $items)

Recursively replace the collection items with the given items.

Parameters

mixed $items

Return Value

Collection

Collection reverse()

Reverse items order.

Return Value

Collection

Search the collection for a given value and return the corresponding key if successful.

Parameters

mixed $value
bool $strict

Return Value

mixed

mixed shift()

Get and remove the first item from the collection.

Return Value

mixed

Collection shuffle(int $seed = null)

Shuffle the items in the collection.

Parameters

int $seed

Return Value

Collection

Collection slice(int $offset, int $length = null)

Slice the underlying collection array.

Parameters

int $offset
int $length

Return Value

Collection

Collection split(int $numberOfGroups)

Split a collection into a certain number of groups.

Parameters

int $numberOfGroups

Return Value

Collection

Collection chunk(int $size)

Chunk the underlying collection array.

Parameters

int $size

Return Value

Collection

Collection sort(callable $callback = null)

Sort through each item with a callback.

Parameters

callable $callback

Return Value

Collection

Collection sortBy(callable|string $callback, int $options = SORT_REGULAR, bool $descending = false)

Sort the collection using the given callback.

Parameters

callable|string $callback
int $options
bool $descending

Return Value

Collection

Collection sortByDesc(callable|string $callback, int $options = SORT_REGULAR)

Sort the collection in descending order using the given callback.

Parameters

callable|string $callback
int $options

Return Value

Collection

Collection sortKeys(int $options = SORT_REGULAR, bool $descending = false)

Sort the collection keys.

Parameters

int $options
bool $descending

Return Value

Collection

Collection sortKeysDesc(int $options = SORT_REGULAR)

Sort the collection keys in descending order.

Parameters

int $options

Return Value

Collection

Collection splice(int $offset, int|null $length = null, mixed $replacement = [])

Splice a portion of the underlying collection array.

Parameters

int $offset
int|null $length
mixed $replacement

Return Value

Collection

mixed sum(callable|string|null $callback = null)

Get the sum of the given values.

Parameters

callable|string|null $callback

Return Value

mixed

Collection take(int $limit)

Take the first or last {$limit} items.

Parameters

int $limit

Return Value

Collection

$this tap(callable $callback)

Pass the collection to the given callback and then return it.

Parameters

callable $callback

Return Value

$this

$this transform(callable $callback)

Transform each item in the collection using a callback.

Parameters

callable $callback

Return Value

$this

Collection unique(string|callable|null $key = null, bool $strict = false)

Return only unique items from the collection array.

Parameters

string|callable|null $key
bool $strict

Return Value

Collection

Collection uniqueStrict(string|callable|null $key = null)

Return only unique items from the collection array using strict comparison.

Parameters

string|callable|null $key

Return Value

Collection

Collection values()

Reset the keys on the underlying array.

Return Value

Collection

protected callable valueRetriever(callable|string|null $value)

Get a value retrieving callback.

Parameters

callable|string|null $value

Return Value

callable

Collection zip(mixed $items)

Zip the collection together with one or more arrays.

e.g. new Collection([1, 2, 3])->zip([4, 5, 6]); => [[1, 4], [2, 5], [3, 6]]

Parameters

mixed $items

Return Value

Collection

Collection pad(int $size, mixed $value)

Pad collection to the specified length with a value.

Parameters

int $size
mixed $value

Return Value

Collection

array toArray()

Get the collection of items as a plain array.

Return Value

array

array jsonSerialize()

Convert the object into something JSON serializable.

Return Value

array

string toJson(int $options = 0)

Get the collection of items as JSON.

Parameters

int $options

Return Value

string

ArrayIterator getIterator()

Get an iterator for the items.

Return Value

ArrayIterator

CachingIterator getCachingIterator(int $flags = CachingIterator::CALL_TOSTRING)

Get a CachingIterator instance.

Parameters

int $flags

Return Value

CachingIterator

int count()

Count the number of items in the collection.

Return Value

int

Collection countBy(callable|null $callback = null)

Count the number of items in the collection using a given truth test.

Parameters

callable|null $callback

Return Value

Collection

$this add(mixed $item)

Add an item to the collection.

Parameters

mixed $item

Return Value

$this

Collection toBase()

Get a base Support collection instance from this collection.

Return Value

Collection

bool offsetExists(mixed $key)

Determine if an item exists at an offset.

Parameters

mixed $key

Return Value

bool

mixed offsetGet(mixed $key)

Get an item at a given offset.

Parameters

mixed $key

Return Value

mixed

void offsetSet(mixed $key, mixed $value)

Set the item at a given offset.

Parameters

mixed $key
mixed $value

Return Value

void

void offsetUnset(string $key)

Unset the item at a given offset.

Parameters

string $key

Return Value

void

string __toString()

Convert the collection to its string representation.

Return Value

string

protected array getArrayableItems(mixed $items)

Results array of items from Collection or Arrayable.

Parameters

mixed $items

Return Value

array

static void proxy(string $method)

Add a method to the list of proxied methods.

Parameters

string $method

Return Value

void

mixed __get(string $key)

Dynamically access collection proxies.

Parameters

string $key

Return Value

mixed

Exceptions

Exception

© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.8/Illuminate/Support/Collection.html