class Collection implements ArrayAccess, Arrayable, Countable, IteratorAggregate, Jsonable, JsonSerializable (View source)
Macroable |
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. |
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. |
Register a custom macro.
Mix another object into the class.
Checks if macro is registered.
Dynamically handle calls to the class.
Dynamically handle calls to the class.
Create a new collection.
Create a new collection instance if the value isn't one already.
Wrap the given value in a collection if applicable.
Get the underlying items from the given collection if applicable.
Create a new collection by invoking the callback a given amount of times.
Get all of the items in the collection.
Get the average value of a given key.
Alias for the "avg" method.
Get the median of a given key.
Get the mode of a given key.
Collapse the collection of items into a single array.
Alias for the "contains" method.
Determine if an item exists in the collection.
Determine if an item exists in the collection using strict comparison.
Cross join with the given lists, returning all possible permutations.
Dump the collection and end the script.
Dump the collection.
Get the items in the collection that are not present in the given items.
Get the items in the collection that are not present in the given items.
Get the items in the collection whose keys and values are not present in the given items.
Get the items in the collection whose keys and values are not present in the given items.
Get the items in the collection whose keys are not present in the given items.
Get the items in the collection whose keys are not present in the given items.
Retrieve duplicate items from the collection.
Retrieve duplicate items from the collection using strict comparison.
Get the comparison function to detect duplicates.
Execute a callback over each item.
Execute a callback over each nested chunk of items.
Determine if all items in the collection pass the given test.
Get all items except for those with the specified keys.
Run a filter over each of the items.
Apply the callback if the value is truthy.
Apply the callback if the collection is empty.
Apply the callback if the collection is not empty.
Apply the callback if the value is falsy.
Apply the callback unless the collection is empty.
Apply the callback unless the collection is not empty.
Filter items by the given key value pair.
Get an operator checker callback.
Filter items by the given key value pair using strict comparison.
Filter items by the given key value pair.
Filter items by the given key value pair using strict comparison.
Filter items such that the value of the given key is between the given values.
Filter items such that the value of the given key is not between the given values.
Filter items by the given key value pair.
Filter items by the given key value pair using strict comparison.
Filter the items, removing any items that don't match the given type.
Get the first item from the collection passing the given truth test.
Get the first item by the given key value pair.
Get a flattened array of the items in the collection.
Flip the items in the collection.
Remove an item from the collection by key.
Get an item from the collection by key.
Group an associative array by a field or using a callback.
Key an associative array by a field or using a callback.
Determine if an item exists in the collection by key.
Concatenate values of a given key as a string.
Intersect the collection with the given items.
Intersect the collection with the given items by key.
Determine if the collection is empty or not.
Determine if the collection is not empty.
Determine if the given value is callable, but not a string.
Join all items from the collection using a string. The final items can use a separate glue string.
Get the keys of the collection items.
Get the last item from the collection.
Get the values of a given key.
Run a map over each of the items.
Run a map over each nested chunk of items.
Run a dictionary map over the items.
The callback should return an associative array with a single key/value pair.
Run a grouping map over the items.
The callback should return an associative array with a single key/value pair.
Run an associative map over each of the items.
The callback should return an associative array with a single key/value pair.
Map a collection and flatten the result by a single level.
Map the values into a new class.
Get the max value of a given key.
Merge the collection with the given items.
Recursively merge the collection with the given items.
Create a collection by using this collection for keys and another for its values.
Union the collection with the given items.
Get the min value of a given key.
Create a new collection consisting of every n-th element.
Get the items with the specified keys.
"Paginate" the collection by slicing it into a smaller collection.
Partition the collection into two arrays using the given callback or key.
Pass the collection to the given callback and return the result.
Get and remove the last item from the collection.
Push an item onto the beginning of the collection.
Push an item onto the end of the collection.
Push all of the given items onto the collection.
Get and remove an item from the collection.
Put an item in the collection by key.
Get one or a specified number of items randomly from the collection.
Reduce the collection to a single value.
Create a collection of all elements that do not pass a given truth test.
Replace the collection items with the given items.
Recursively replace the collection items with the given items.
Reverse items order.
Search the collection for a given value and return the corresponding key if successful.
Get and remove the first item from the collection.
Shuffle the items in the collection.
Slice the underlying collection array.
Split a collection into a certain number of groups.
Chunk the underlying collection array.
Sort through each item with a callback.
Sort the collection using the given callback.
Sort the collection in descending order using the given callback.
Sort the collection keys.
Sort the collection keys in descending order.
Splice a portion of the underlying collection array.
Get the sum of the given values.
Take the first or last {$limit} items.
Pass the collection to the given callback and then return it.
Transform each item in the collection using a callback.
Return only unique items from the collection array.
Return only unique items from the collection array using strict comparison.
Reset the keys on the underlying array.
Get a value retrieving callback.
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]]
Pad collection to the specified length with a value.
Get the collection of items as a plain array.
Convert the object into something JSON serializable.
Get the collection of items as JSON.
Get an iterator for the items.
Get a CachingIterator instance.
Count the number of items in the collection.
Count the number of items in the collection using a given truth test.
Add an item to the collection.
Get a base Support collection instance from this collection.
Determine if an item exists at an offset.
Get an item at a given offset.
Set the item at a given offset.
Unset the item at a given offset.
Convert the collection to its string representation.
Results array of items from Collection or Arrayable.
Add a method to the list of proxied methods.
Dynamically access collection proxies.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.8/Illuminate/Support/Collection.html