Enumerable
interface Enumerable implements Arrayable, Countable, IteratorAggregate, Jsonable, JsonSerializable (View source)
Methods
array | toArray() Get the instance as an array. | from Arrayable |
string | toJson(int $options = 0) Convert the object to its JSON representation. | from Jsonable |
static Enumerable | make(mixed $items = []) Create a new collection instance if the value isn't one already. | |
static Enumerable | times(int $number, callable $callback = null) Create a new instance by invoking the callback a given amount of times. | |
static Enumerable | range(int $from, int $to) Create a collection with the given range. | |
static Enumerable | wrap(mixed $value) Wrap the given value in a collection if applicable. | |
static array | unwrap(array|Enumerable $value) Get the underlying items from the given collection if applicable. | |
static Enumerable | empty() Create a new instance with no items. | |
array | all() Get all items in the enumerable. | |
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. | |
Enumerable | collapse() Collapse the items into a single enumerable. | |
bool | some(mixed $key, mixed $operator = null, mixed $value = null) Alias for the "contains" method. | |
bool | containsStrict(mixed $key, mixed $value = null) Determine if an item exists, using strict comparison. | |
mixed | avg(callable|string|null $callback = null) Get the average value of a given key. | |
bool | contains(mixed $key, mixed $operator = null, mixed $value = null) Determine if an item exists in the enumerable. | |
Enumerable | 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. | |
Enumerable | diff(mixed $items) Get the items that are not present in the given items. | |
Enumerable | diffUsing(mixed $items, callable $callback) Get the items that are not present in the given items, using the callback. | |
Enumerable | diffAssoc(mixed $items) Get the items whose keys and values are not present in the given items. | |
Enumerable | diffAssocUsing(mixed $items, callable $callback) Get the items whose keys and values are not present in the given items, using the callback. | |
Enumerable | diffKeys(mixed $items) Get the items whose keys are not present in the given items. | |
Enumerable | diffKeysUsing(mixed $items, callable $callback) Get the items whose keys are not present in the given items, using the callback. | |
Enumerable | duplicates(callable|null $callback = null, bool $strict = false) Retrieve duplicate items. | |
Enumerable | duplicatesStrict(callable|null $callback = null) Retrieve duplicate items using strict comparison. | |
$this | each(callable $callback) Execute a callback over each item. | |
Enumerable | 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 pass the given truth test. | |
Enumerable | except(mixed $keys) Get all items except for those with the specified keys. | |
Enumerable | filter(callable $callback = null) Run a filter over each of the items. | |
Enumerable|mixed | when(bool $value, callable $callback, callable $default = null) Apply the callback if the value is truthy. | |
Enumerable|mixed | whenEmpty(callable $callback, callable $default = null) Apply the callback if the collection is empty. | |
Enumerable|mixed | whenNotEmpty(callable $callback, callable $default = null) Apply the callback if the collection is not empty. | |
Enumerable|mixed | unless(bool $value, callable $callback, callable $default = null) Apply the callback if the value is falsy. | |
Enumerable|mixed | unlessEmpty(callable $callback, callable $default = null) Apply the callback unless the collection is empty. | |
Enumerable|mixed | unlessNotEmpty(callable $callback, callable $default = null) Apply the callback unless the collection is not empty. | |
Enumerable | where(string $key, mixed $operator = null, mixed $value = null) Filter items by the given key value pair. | |
Enumerable | whereNull(string|null $key = null) Filter items where the value for the given key is null. | |
Enumerable | whereNotNull(string|null $key = null) Filter items where the value for the given key is not null. | |
Enumerable | whereStrict(string $key, mixed $value) Filter items by the given key value pair using strict comparison. | |
Enumerable | whereIn(string $key, mixed $values, bool $strict = false) Filter items by the given key value pair. | |
Enumerable | whereInStrict(string $key, mixed $values) Filter items by the given key value pair using strict comparison. | |
Enumerable | whereBetween(string $key, array $values) Filter items such that the value of the given key is between the given values. | |
Enumerable | whereNotBetween(string $key, array $values) Filter items such that the value of the given key is not between the given values. | |
Enumerable | whereNotIn(string $key, mixed $values, bool $strict = false) Filter items by the given key value pair. | |
Enumerable | whereNotInStrict(string $key, mixed $values) Filter items by the given key value pair using strict comparison. | |
Enumerable | 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 enumerable 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. | |
Enumerable | flatten(int $depth = INF) Get a flattened array of the items in the collection. | |
Enumerable | flip() Flip the values with their keys. | |
mixed | get(mixed $key, mixed $default = null) Get an item from the collection by key. | |
Enumerable | groupBy(array|callable|string $groupBy, bool $preserveKeys = false) Group an associative array by a field or using a callback. | |
Enumerable | 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|null $glue = null) Concatenate values of a given key as a string. | |
Enumerable | intersect(mixed $items) Intersect the collection with the given items. | |
Enumerable | 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. | |
string | join(string $glue, string $finalGlue = '') Join all items from the collection using a string. The final items can use a separate glue string. | |
Enumerable | keys() Get the keys of the collection items. | |
mixed | last(callable $callback = null, mixed $default = null) Get the last item from the collection. | |
Enumerable | map(callable $callback) Run a map over each of the items. | |
Enumerable | mapSpread(callable $callback) Run a map over each nested chunk of items. | |
Enumerable | mapToDictionary(callable $callback) Run a dictionary map over the items. | |
Enumerable | mapToGroups(callable $callback) Run a grouping map over the items. | |
Enumerable | mapWithKeys(callable $callback) Run an associative map over each of the items. | |
Enumerable | flatMap(callable $callback) Map a collection and flatten the result by a single level. | |
Enumerable | mapInto(string $class) Map the values into a new class. | |
Enumerable | merge(mixed $items) Merge the collection with the given items. | |
Enumerable | mergeRecursive(mixed $items) Recursively merge the collection with the given items. | |
Enumerable | combine(mixed $values) Create a collection by using this collection for keys and another for its values. | |
Enumerable | 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. | |
mixed | max(callable|string|null $callback = null) Get the max value of a given key. | |
Enumerable | nth(int $step, int $offset = 0) Create a new collection consisting of every n-th element. | |
Enumerable | only(mixed $keys) Get the items with the specified keys. | |
Enumerable | forPage(int $page, int $perPage) "Paginate" the collection by slicing it into a smaller collection. | |
Enumerable | partition(callable|string $key, mixed $operator = null, mixed $value = null) Partition the collection into two arrays using the given callback or key. | |
Enumerable | concat(iterable $source) Push all of the given items onto the collection. | |
Enumerable|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. | |
Enumerable | replace(mixed $items) Replace the collection items with the given items. | |
Enumerable | replaceRecursive(mixed $items) Recursively replace the collection items with the given items. | |
Enumerable | 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. | |
Enumerable | shuffle(int|null $seed = null) Shuffle the items in the collection. | |
Enumerable | skip(int $count) Skip the first {$count} items. | |
Enumerable | skipUntil(mixed $value) Skip items in the collection until the given condition is met. | |
Enumerable | skipWhile(mixed $value) Skip items in the collection while the given condition is met. | |
Enumerable | slice(int $offset, int|null $length = null) Get a slice of items from the enumerable. | |
Enumerable | split(int $numberOfGroups) Split a collection into a certain number of groups. | |
Enumerable | chunk(int $size) Chunk the collection into chunks of the given size. | |
Enumerable | chunkWhile(callable $callback) Chunk the collection into chunks with a callback. | |
Enumerable | sort(callable|null|int $callback = null) Sort through each item with a callback. | |
Enumerable | sortDesc(int $options = SORT_REGULAR) Sort items in descending order. | |
Enumerable | sortBy(callable|string $callback, int $options = SORT_REGULAR, bool $descending = false) Sort the collection using the given callback. | |
Enumerable | sortByDesc(callable|string $callback, int $options = SORT_REGULAR) Sort the collection in descending order using the given callback. | |
Enumerable | sortKeys(int $options = SORT_REGULAR, bool $descending = false) Sort the collection keys. | |
Enumerable | sortKeysDesc(int $options = SORT_REGULAR) Sort the collection keys in descending order. | |
mixed | sum(callable|string|null $callback = null) Get the sum of the given values. | |
Enumerable | take(int $limit) Take the first or last {$limit} items. | |
Enumerable | takeUntil(mixed $value) Take items in the collection until the given condition is met. | |
Enumerable | takeWhile(mixed $value) Take items in the collection while the given condition is met. | |
$this | tap(callable $callback) Pass the collection to the given callback and then return it. | |
mixed | pipe(callable $callback) Pass the enumerable to the given callback and return the result. | |
Enumerable | pluck(string|array $value, string|null $key = null) Get the values of a given key. | |
Enumerable | reject(callable|mixed $callback = true) Create a collection of all elements that do not pass a given truth test. | |
Enumerable | unique(string|callable|null $key = null, bool $strict = false) Return only unique items from the collection array. | |
Enumerable | uniqueStrict(string|callable|null $key = null) Return only unique items from the collection array using strict comparison. | |
Enumerable | values() Reset the keys on the underlying array. | |
Enumerable | pad(int $size, mixed $value) Pad collection to the specified length with a value. | |
Enumerable | countBy(callable|null $callback = null) Count the number of items in the collection using a given truth test. | |
Enumerable | zip(mixed $items) Zip the collection together with one or more arrays. | |
Collection | collect() Collect the values into a collection. | |
string | __toString() Convert the collection to its string representation. | |
static void | proxy(string $method) Add a method to the list of proxied methods. | |
mixed | __get(string $key) Dynamically access collection proxies. |
Details
array toArray()
Get the instance as an array.
string toJson(int $options = 0)
Convert the object to its JSON representation.
static Enumerable make(mixed $items = [])
Create a new collection instance if the value isn't one already.
static Enumerable times(int $number, callable $callback = null)
Create a new instance by invoking the callback a given amount of times.
static Enumerable range(int $from, int $to)
Create a collection with the given range.
static Enumerable wrap(mixed $value)
Wrap the given value in a collection if applicable.
static array unwrap(array|Enumerable $value)
Get the underlying items from the given collection if applicable.
static Enumerable empty()
Create a new instance with no items.
array all()
Get all items in the enumerable.
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.
Enumerable collapse()
Collapse the items into a single enumerable.
bool some(mixed $key, mixed $operator = null, mixed $value = null)
Alias for the "contains" method.
bool containsStrict(mixed $key, mixed $value = null)
Determine if an item exists, using strict comparison.
mixed avg(callable|string|null $callback = null)
Get the average value of a given key.
bool contains(mixed $key, mixed $operator = null, mixed $value = null)
Determine if an item exists in the enumerable.
Enumerable 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.
Enumerable diff(mixed $items)
Get the items that are not present in the given items.
Enumerable diffUsing(mixed $items, callable $callback)
Get the items that are not present in the given items, using the callback.
Enumerable diffAssoc(mixed $items)
Get the items whose keys and values are not present in the given items.
Enumerable diffAssocUsing(mixed $items, callable $callback)
Get the items whose keys and values are not present in the given items, using the callback.
Enumerable diffKeys(mixed $items)
Get the items whose keys are not present in the given items.
Enumerable diffKeysUsing(mixed $items, callable $callback)
Get the items whose keys are not present in the given items, using the callback.
Enumerable duplicates(callable|null $callback = null, bool $strict = false)
Retrieve duplicate items.
Enumerable duplicatesStrict(callable|null $callback = null)
Retrieve duplicate items using strict comparison.
$this each(callable $callback)
Execute a callback over each item.
Enumerable 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 pass the given truth test.
Enumerable except(mixed $keys)
Get all items except for those with the specified keys.
Enumerable filter(callable $callback = null)
Run a filter over each of the items.
Enumerable|mixed when(bool $value, callable $callback, callable $default = null)
Apply the callback if the value is truthy.
Enumerable|mixed whenEmpty(callable $callback, callable $default = null)
Apply the callback if the collection is empty.
Enumerable|mixed whenNotEmpty(callable $callback, callable $default = null)
Apply the callback if the collection is not empty.
Enumerable|mixed unless(bool $value, callable $callback, callable $default = null)
Apply the callback if the value is falsy.
Enumerable|mixed unlessEmpty(callable $callback, callable $default = null)
Apply the callback unless the collection is empty.
Enumerable|mixed unlessNotEmpty(callable $callback, callable $default = null)
Apply the callback unless the collection is not empty.
Enumerable where(string $key, mixed $operator = null, mixed $value = null)
Filter items by the given key value pair.
Enumerable whereNull(string|null $key = null)
Filter items where the value for the given key is null.
Enumerable whereNotNull(string|null $key = null)
Filter items where the value for the given key is not null.
Enumerable whereStrict(string $key, mixed $value)
Filter items by the given key value pair using strict comparison.
Enumerable whereIn(string $key, mixed $values, bool $strict = false)
Filter items by the given key value pair.
Enumerable whereInStrict(string $key, mixed $values)
Filter items by the given key value pair using strict comparison.
Enumerable whereBetween(string $key, array $values)
Filter items such that the value of the given key is between the given values.
Enumerable whereNotBetween(string $key, array $values)
Filter items such that the value of the given key is not between the given values.
Enumerable whereNotIn(string $key, mixed $values, bool $strict = false)
Filter items by the given key value pair.
Enumerable whereNotInStrict(string $key, mixed $values)
Filter items by the given key value pair using strict comparison.
Enumerable 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 enumerable 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.
Enumerable flatten(int $depth = INF)
Get a flattened array of the items in the collection.
Enumerable flip()
Flip the values with their keys.
mixed get(mixed $key, mixed $default = null)
Get an item from the collection by key.
Enumerable groupBy(array|callable|string $groupBy, bool $preserveKeys = false)
Group an associative array by a field or using a callback.
Enumerable 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|null $glue = null)
Concatenate values of a given key as a string.
Enumerable intersect(mixed $items)
Intersect the collection with the given items.
Enumerable 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.
string join(string $glue, string $finalGlue = '')
Join all items from the collection using a string. The final items can use a separate glue string.
Enumerable keys()
Get the keys of the collection items.
mixed last(callable $callback = null, mixed $default = null)
Get the last item from the collection.
Enumerable map(callable $callback)
Run a map over each of the items.
Enumerable mapSpread(callable $callback)
Run a map over each nested chunk of items.
Enumerable mapToDictionary(callable $callback)
Run a dictionary map over the items.
The callback should return an associative array with a single key/value pair.
Enumerable mapToGroups(callable $callback)
Run a grouping map over the items.
The callback should return an associative array with a single key/value pair.
Enumerable 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.
Enumerable flatMap(callable $callback)
Map a collection and flatten the result by a single level.
Enumerable mapInto(string $class)
Map the values into a new class.
Enumerable merge(mixed $items)
Merge the collection with the given items.
Enumerable mergeRecursive(mixed $items)
Recursively merge the collection with the given items.
Enumerable combine(mixed $values)
Create a collection by using this collection for keys and another for its values.
Enumerable 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.
mixed max(callable|string|null $callback = null)
Get the max value of a given key.
Enumerable nth(int $step, int $offset = 0)
Create a new collection consisting of every n-th element.
Enumerable only(mixed $keys)
Get the items with the specified keys.
Enumerable forPage(int $page, int $perPage)
"Paginate" the collection by slicing it into a smaller collection.
Enumerable partition(callable|string $key, mixed $operator = null, mixed $value = null)
Partition the collection into two arrays using the given callback or key.
Enumerable concat(iterable $source)
Push all of the given items onto the collection.
Enumerable|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.
Enumerable replace(mixed $items)
Replace the collection items with the given items.
Enumerable replaceRecursive(mixed $items)
Recursively replace the collection items with the given items.
Enumerable 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.
Enumerable shuffle(int|null $seed = null)
Shuffle the items in the collection.
Enumerable skip(int $count)
Skip the first {$count} items.
Enumerable skipUntil(mixed $value)
Skip items in the collection until the given condition is met.
Enumerable skipWhile(mixed $value)
Skip items in the collection while the given condition is met.
Enumerable slice(int $offset, int|null $length = null)
Get a slice of items from the enumerable.
Enumerable split(int $numberOfGroups)
Split a collection into a certain number of groups.
Enumerable chunk(int $size)
Chunk the collection into chunks of the given size.
Enumerable chunkWhile(callable $callback)
Chunk the collection into chunks with a callback.
Enumerable sort(callable|null|int $callback = null)
Sort through each item with a callback.
Enumerable sortDesc(int $options = SORT_REGULAR)
Sort items in descending order.
Enumerable sortBy(callable|string $callback, int $options = SORT_REGULAR, bool $descending = false)
Sort the collection using the given callback.
Enumerable sortByDesc(callable|string $callback, int $options = SORT_REGULAR)
Sort the collection in descending order using the given callback.
Enumerable sortKeys(int $options = SORT_REGULAR, bool $descending = false)
Sort the collection keys.
Enumerable sortKeysDesc(int $options = SORT_REGULAR)
Sort the collection keys in descending order.
mixed sum(callable|string|null $callback = null)
Get the sum of the given values.
Enumerable take(int $limit)
Take the first or last {$limit} items.
Enumerable takeUntil(mixed $value)
Take items in the collection until the given condition is met.
Enumerable takeWhile(mixed $value)
Take items in the collection while the given condition is met.
$this tap(callable $callback)
Pass the collection to the given callback and then return it.
mixed pipe(callable $callback)
Pass the enumerable to the given callback and return the result.
Enumerable pluck(string|array $value, string|null $key = null)
Get the values of a given key.
Enumerable reject(callable|mixed $callback = true)
Create a collection of all elements that do not pass a given truth test.
Enumerable unique(string|callable|null $key = null, bool $strict = false)
Return only unique items from the collection array.
Enumerable uniqueStrict(string|callable|null $key = null)
Return only unique items from the collection array using strict comparison.
Enumerable values()
Reset the keys on the underlying array.
Enumerable pad(int $size, mixed $value)
Pad collection to the specified length with a value.
Enumerable countBy(callable|null $callback = null)
Count the number of items in the collection using a given truth test.
Enumerable 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]]
Collection collect()
Collect the values into a collection.
string __toString()
Convert the collection to its string representation.
static void proxy(string $method)
Add a method to the list of proxied methods.
mixed __get(string $key)
Dynamically access collection proxies.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/8.x/Illuminate/Support/Enumerable.html