On this page
LazyCollection
class LazyCollection implements CanBeEscapedWhenCastToString, Enumerable (View source)
Traits
Properties
Methods
| static EnumeratesValues | make(mixed $items = []) Create a new collection instance if the value isn't one already. |
from EnumeratesValues |
| static EnumeratesValues | wrap(mixed $value) Wrap the given value in a collection if applicable. |
from EnumeratesValues |
| static array | unwrap(array|EnumeratesValues $value) Get the underlying items from the given collection if applicable. |
from EnumeratesValues |
| static EnumeratesValues | empty() Create a new instance with no items. |
from EnumeratesValues |
| static EnumeratesValues | times(int $number, callable $callback = null) Create a new collection by invoking the callback a given amount of times. |
from EnumeratesValues |
| mixed | average(callable|string|null $callback = null) Alias for the "avg" method. |
from EnumeratesValues |
| bool | some(mixed $key, mixed $operator = null, mixed $value = null) Alias for the "contains" method. |
from EnumeratesValues |
| bool | containsStrict(mixed $key, mixed $value = null) Determine if an item exists, using strict comparison. |
from EnumeratesValues |
| void | dd(mixed ...$args) Dump the items and end the script. |
from EnumeratesValues |
| $this | dump() Dump the items. |
from EnumeratesValues |
| $this | each(callable $callback) Execute a callback over each item. |
from EnumeratesValues |
| EnumeratesValues | eachSpread(callable $callback) Execute a callback over each nested chunk of items. |
from EnumeratesValues |
| bool | every(string|callable $key, mixed $operator = null, mixed $value = null) Determine if all items pass the given truth test. |
from EnumeratesValues |
| mixed | firstWhere(string $key, mixed $operator = null, mixed $value = null) Get the first item by the given key value pair. |
from EnumeratesValues |
| bool | isNotEmpty() Determine if the collection is not empty. |
from EnumeratesValues |
| EnumeratesValues | mapSpread(callable $callback) Run a map over each nested chunk of items. |
from EnumeratesValues |
| EnumeratesValues | mapToGroups(callable $callback) Run a grouping map over the items. |
from EnumeratesValues |
| EnumeratesValues | flatMap(callable $callback) Map a collection and flatten the result by a single level. |
from EnumeratesValues |
| EnumeratesValues | mapInto(string $class) Map the values into a new class. |
from EnumeratesValues |
| mixed | min(callable|string|null $callback = null) Get the min value of a given key. |
from EnumeratesValues |
| mixed | max(callable|string|null $callback = null) Get the max value of a given key. |
from EnumeratesValues |
| EnumeratesValues | forPage(int $page, int $perPage) "Paginate" the collection by slicing it into a smaller collection. |
from EnumeratesValues |
| EnumeratesValues | partition(callable|string $key, mixed $operator = null, mixed $value = null) Partition the collection into two arrays using the given callback or key. |
from EnumeratesValues |
| mixed | sum(callable|string|null $callback = null) Get the sum of the given values. |
from EnumeratesValues |
| EnumeratesValues|mixed | when(bool|mixed $value, callable $callback = null, callable $default = null) Apply the callback if the value is truthy. |
from EnumeratesValues |
| EnumeratesValues|mixed | whenEmpty(callable $callback, callable $default = null) Apply the callback if the collection is empty. |
from EnumeratesValues |
| EnumeratesValues|mixed | whenNotEmpty(callable $callback, callable $default = null) Apply the callback if the collection is not empty. |
from EnumeratesValues |
| EnumeratesValues|mixed | unless(bool $value, callable $callback, callable $default = null) Apply the callback if the value is falsy. |
from EnumeratesValues |
| EnumeratesValues|mixed | unlessEmpty(callable $callback, callable $default = null) Apply the callback unless the collection is empty. |
from EnumeratesValues |
| EnumeratesValues|mixed | unlessNotEmpty(callable $callback, callable $default = null) Apply the callback unless the collection is not empty. |
from EnumeratesValues |
| EnumeratesValues | where(string $key, mixed $operator = null, mixed $value = null) Filter items by the given key value pair. |
from EnumeratesValues |
| EnumeratesValues | whereNull(string|null $key = null) Filter items where the value for the given key is null. |
from EnumeratesValues |
| EnumeratesValues | whereNotNull(string|null $key = null) Filter items where the value for the given key is not null. |
from EnumeratesValues |
| EnumeratesValues | whereStrict(string $key, mixed $value) Filter items by the given key value pair using strict comparison. |
from EnumeratesValues |
| EnumeratesValues | whereIn(string $key, mixed $values, bool $strict = false) Filter items by the given key value pair. |
from EnumeratesValues |
| EnumeratesValues | whereInStrict(string $key, mixed $values) Filter items by the given key value pair using strict comparison. |
from EnumeratesValues |
| EnumeratesValues | whereBetween(string $key, array $values) Filter items such that the value of the given key is between the given values. |
from EnumeratesValues |
| EnumeratesValues | whereNotBetween(string $key, array $values) Filter items such that the value of the given key is not between the given values. |
from EnumeratesValues |
| EnumeratesValues | whereNotIn(string $key, mixed $values, bool $strict = false) Filter items by the given key value pair. |
from EnumeratesValues |
| EnumeratesValues | whereNotInStrict(string $key, mixed $values) Filter items by the given key value pair using strict comparison. |
from EnumeratesValues |
| EnumeratesValues | whereInstanceOf(string|string[] $type) Filter the items, removing any items that don't match the given type(s). |
from EnumeratesValues |
| mixed | pipe(callable $callback) Pass the collection to the given callback and return the result. |
from EnumeratesValues |
| mixed | pipeInto(string $class) Pass the collection into a new class. |
from EnumeratesValues |
| mixed | pipeThrough(callable[] $pipes) Pass the collection through a series of callable pipes and return the result. |
from EnumeratesValues |
| $this | tap(callable $callback) Pass the collection to the given callback and then return it. |
from EnumeratesValues |
| mixed | reduce(callable $callback, mixed $initial = null) Reduce the collection to a single value. |
from EnumeratesValues |
| array | reduceMany(callable $callback, mixed ...$initial) deprecated Reduce the collection to multiple aggregate values. |
from EnumeratesValues |
| array | reduceSpread(callable $callback, mixed ...$initial) Reduce the collection to multiple aggregate values. |
from EnumeratesValues |
| mixed | reduceWithKeys(callable $callback, mixed $initial = null) Reduce an associative collection to a single value. |
from EnumeratesValues |
| EnumeratesValues | reject(callable|mixed $callback = true) Create a collection of all elements that do not pass a given truth test. |
from EnumeratesValues |
| EnumeratesValues | uniqueStrict(string|callable|null $key = null) Return only unique items from the collection array using strict comparison. |
from EnumeratesValues |
| Collection | collect() Collect the values into a collection. |
from EnumeratesValues |
| array | toArray() Get the collection of items as a plain array. |
from EnumeratesValues |
| array | jsonSerialize() Convert the object into something JSON serializable. |
from EnumeratesValues |
| string | toJson(int $options = 0) Get the collection of items as JSON. |
from EnumeratesValues |
| CachingIterator | getCachingIterator(int $flags = CachingIterator::CALL_TOSTRING) Get a CachingIterator instance. |
from EnumeratesValues |
| string | __toString() Convert the collection to its string representation. |
from EnumeratesValues |
| $this | escapeWhenCastingToString(bool $escape = true) Indicate that the model's string representation should be escaped when __toString is invoked. |
from EnumeratesValues |
| static void | proxy(string $method) Add a method to the list of proxied methods. |
from EnumeratesValues |
| mixed | __get(string $key) Dynamically access collection proxies. |
from EnumeratesValues |
| array | getArrayableItems(mixed $items) Results array of items from Collection or Arrayable. |
from EnumeratesValues |
| Closure | operatorForWhere(string $key, string|null $operator = null, mixed $value = null) Get an operator checker callback. |
from EnumeratesValues |
| bool | useAsCallable(mixed $value) Determine if the given value is callable, but not a string. |
from EnumeratesValues |
| callable | valueRetriever(callable|string|null $value) Get a value retrieving callback. |
from EnumeratesValues |
| Closure | equality(mixed $value) Make a function to check an item's equality. |
from EnumeratesValues |
| Closure | negate(Closure $callback) Make a function using another function, by negating its result. |
from EnumeratesValues |
| Closure | identity() Make a function that returns what's passed to it. |
from EnumeratesValues |
| 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 void | flushMacros() Flush the existing macros. |
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 $source = null) Create a new lazy collection instance. |
|
| static Enumerable | range(int $from, int $to) Create a collection with the given range. |
|
| array | all() Get all items in the enumerable. |
|
| LazyCollection | eager() Eager load all items into a new lazy collection backed by an array. |
|
| LazyCollection | remember() Cache values as they're enumerated. |
|
| mixed | avg(callable|string|null $callback = null) Get the average value of a given key. |
|
| 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 collection of items into a single array. |
|
| bool | contains(mixed $key, mixed $operator = null, mixed $value = null) Determine if an item exists in the enumerable. |
|
| bool | doesntContain(mixed $key, mixed $operator = null, mixed $value = null) Determine if an item is not contained in the enumerable. |
|
| Enumerable | crossJoin(array ...$arrays) Cross join the given iterables, returning all possible permutations. |
|
| Enumerable | countBy(callable|string $countBy = null) Count the number of items in the collection by a field or using a callback. |
|
| 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|string|null $callback = null, bool $strict = false) Retrieve duplicate items. |
|
| Enumerable | duplicatesStrict(callable|string|null $callback = null) Retrieve duplicate items using strict comparison. |
|
| 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. |
|
| mixed | first(callable $callback = null, mixed $default = null) Get the first item from the enumerable passing the given truth test. |
|
| Enumerable | flatten(int $depth = INF) Get a flattened list of the items in the collection. |
|
| Enumerable | flip() Flip the items in the collection. |
|
| mixed | get(mixed $key, mixed $default = null) Get an item 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. |
|
| bool | hasAny(mixed $key) Determine if any of the keys exist in the collection. |
|
| 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 items are empty or not. |
|
| bool | containsOneItem() Determine if the collection contains a single item. |
|
| 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 | pluck(string|array $value, string|null $key = null) Get the values of a given key. |
|
| Enumerable | map(callable $callback) Run a map over each of the items. |
|
| Enumerable | mapToDictionary(callable $callback) Run a dictionary map over the items. |
|
| Enumerable | mapWithKeys(callable $callback) Run an associative map over each of the items. |
|
| 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. |
|
| 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 | 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. |
|
| 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. |
|
| LazyCollection | sliding(int $size = 2, int $step = 1) Create chunks representing a "sliding window" view of 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. |
|
| mixed | sole(mixed $key = null, mixed $operator = null, mixed $value = null) Get the first item in the collection, but only if exactly one item exists. Otherwise, throw an exception. |
|
| mixed | firstOrFail(mixed $key = null, mixed $operator = null, mixed $value = null) Get the first item in the collection but throw an exception if no matching items exist. |
|
| Enumerable | chunk(int $size) Chunk the collection into chunks of the given size. |
|
| LazyCollection | splitIn(int $numberOfGroups) Split a collection into a certain number of groups, and fill the first groups completely. |
|
| 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. |
|
| LazyCollection | sortKeysUsing(callable $callback) Sort the collection keys using a callback. |
|
| 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. |
|
| LazyCollection | takeUntilTimeout(DateTimeInterface $timeout) Take items in the collection until a given point in time. |
|
| Enumerable | takeWhile(mixed $value) Take items in the collection while the given condition is met. |
|
| LazyCollection | tapEach(callable $callback) Pass each item in the collection to the given callback, lazily. |
|
| LazyCollection | undot() Convert a flatten "dot" notation array into an expanded array. |
|
| Enumerable | unique(string|callable|null $key = null, bool $strict = false) Return only unique items from the collection array. |
|
| Enumerable | values() Reset the keys on the underlying array. |
|
| Enumerable | zip(mixed $items) Zip the collection together with one or more arrays. |
|
| Enumerable | pad(int $size, mixed $value) Pad collection to the specified length with a value. |
|
| Traversable | getIterator() Get the values iterator. |
|
| int | count() Count the number of items in the collection. |
|
| Traversable | makeIterator(mixed $source) Make an iterator from the given source. |
|
| array | explodePluckParameters(string|array $value, string|array|null $key) Explode the "value" and "key" arguments passed to "pluck". |
|
| LazyCollection | passthru(string $method, array $params) Pass this lazy collection through a method on the collection class. |
|
| int | now() Get the current time. |
Details
static EnumeratesValues make(mixed $items = [])
Create a new collection instance if the value isn't one already.
static EnumeratesValues wrap(mixed $value)
Wrap the given value in a collection if applicable.
static array unwrap(array|EnumeratesValues $value)
Get the underlying items from the given collection if applicable.
static EnumeratesValues empty()
Create a new instance with no items.
static EnumeratesValues times(int $number, callable $callback = null)
Create a new collection by invoking the callback a given amount of times.
mixed average(callable|string|null $callback = null)
Alias for the "avg" method.
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.
void dd(mixed ...$args)
Dump the items and end the script.
$this dump()
Dump the items.
$this each(callable $callback)
Execute a callback over each item.
EnumeratesValues 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.
mixed firstWhere(string $key, mixed $operator = null, mixed $value = null)
Get the first item by the given key value pair.
bool isNotEmpty()
Determine if the collection is not empty.
EnumeratesValues mapSpread(callable $callback)
Run a map over each nested chunk of items.
EnumeratesValues mapToGroups(callable $callback)
Run a grouping map over the items.
The callback should return an associative array with a single key/value pair.
EnumeratesValues flatMap(callable $callback)
Map a collection and flatten the result by a single level.
EnumeratesValues mapInto(string $class)
Map the values into a new class.
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.
EnumeratesValues forPage(int $page, int $perPage)
"Paginate" the collection by slicing it into a smaller collection.
EnumeratesValues partition(callable|string $key, mixed $operator = null, mixed $value = null)
Partition the collection into two arrays using the given callback or key.
mixed sum(callable|string|null $callback = null)
Get the sum of the given values.
EnumeratesValues|mixed when(bool|mixed $value, callable $callback = null, callable $default = null)
Apply the callback if the value is truthy.
EnumeratesValues|mixed whenEmpty(callable $callback, callable $default = null)
Apply the callback if the collection is empty.
EnumeratesValues|mixed whenNotEmpty(callable $callback, callable $default = null)
Apply the callback if the collection is not empty.
EnumeratesValues|mixed unless(bool $value, callable $callback, callable $default = null)
Apply the callback if the value is falsy.
EnumeratesValues|mixed unlessEmpty(callable $callback, callable $default = null)
Apply the callback unless the collection is empty.
EnumeratesValues|mixed unlessNotEmpty(callable $callback, callable $default = null)
Apply the callback unless the collection is not empty.
EnumeratesValues where(string $key, mixed $operator = null, mixed $value = null)
Filter items by the given key value pair.
EnumeratesValues whereNull(string|null $key = null)
Filter items where the value for the given key is null.
EnumeratesValues whereNotNull(string|null $key = null)
Filter items where the value for the given key is not null.
EnumeratesValues whereStrict(string $key, mixed $value)
Filter items by the given key value pair using strict comparison.
EnumeratesValues whereIn(string $key, mixed $values, bool $strict = false)
Filter items by the given key value pair.
EnumeratesValues whereInStrict(string $key, mixed $values)
Filter items by the given key value pair using strict comparison.
EnumeratesValues whereBetween(string $key, array $values)
Filter items such that the value of the given key is between the given values.
EnumeratesValues whereNotBetween(string $key, array $values)
Filter items such that the value of the given key is not between the given values.
EnumeratesValues whereNotIn(string $key, mixed $values, bool $strict = false)
Filter items by the given key value pair.
EnumeratesValues whereNotInStrict(string $key, mixed $values)
Filter items by the given key value pair using strict comparison.
EnumeratesValues whereInstanceOf(string|string[] $type)
Filter the items, removing any items that don't match the given type(s).
mixed pipe(callable $callback)
Pass the collection to the given callback and return the result.
mixed pipeInto(string $class)
Pass the collection into a new class.
mixed pipeThrough(callable[] $pipes)
Pass the collection through a series of callable pipes and return the result.
$this tap(callable $callback)
Pass the collection to the given callback and then return it.
mixed reduce(callable $callback, mixed $initial = null)
Reduce the collection to a single value.
array reduceMany(callable $callback, mixed ...$initial) deprecated
deprecated
Use "reduceSpread" insteadReduce the collection to multiple aggregate values.
array reduceSpread(callable $callback, mixed ...$initial)
Reduce the collection to multiple aggregate values.
mixed reduceWithKeys(callable $callback, mixed $initial = null)
Reduce an associative collection to a single value.
EnumeratesValues reject(callable|mixed $callback = true)
Create a collection of all elements that do not pass a given truth test.
EnumeratesValues uniqueStrict(string|callable|null $key = null)
Return only unique items from the collection array using strict comparison.
Collection collect()
Collect the values into a collection.
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.
CachingIterator getCachingIterator(int $flags = CachingIterator::CALL_TOSTRING)
Get a CachingIterator instance.
string __toString()
Convert the collection to its string representation.
$this escapeWhenCastingToString(bool $escape = true)
Indicate that the model's string representation should be escaped when __toString is invoked.
static void proxy(string $method)
Add a method to the list of proxied methods.
mixed __get(string $key)
Dynamically access collection proxies.
protected array getArrayableItems(mixed $items)
Results array of items from Collection or Arrayable.
protected Closure operatorForWhere(string $key, string|null $operator = null, mixed $value = null)
Get an operator checker callback.
protected bool useAsCallable(mixed $value)
Determine if the given value is callable, but not a string.
protected callable valueRetriever(callable|string|null $value)
Get a value retrieving callback.
protected Closure equality(mixed $value)
Make a function to check an item's equality.
protected Closure negate(Closure $callback)
Make a function using another function, by negating its result.
protected Closure identity()
Make a function that returns what's passed to it.
static void macro(string $name, object|callable $macro)
Register a custom macro.
static void mixin(object $mixin, bool $replace = true)
Mix another object into the class.
static bool hasMacro(string $name)
Checks if macro is registered.
static void flushMacros()
Flush the existing macros.
static mixed __callStatic(string $method, array $parameters)
Dynamically handle calls to the class.
mixed __call(string $method, array $parameters)
Dynamically handle calls to the class.
void __construct(mixed $source = null)
Create a new lazy collection instance.
static Enumerable range(int $from, int $to)
Create a collection with the given range.
array all()
Get all items in the enumerable.
LazyCollection eager()
Eager load all items into a new lazy collection backed by an array.
LazyCollection remember()
Cache values as they're enumerated.
mixed avg(callable|string|null $callback = null)
Get the average value of a given key.
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 collection of items into a single array.
bool contains(mixed $key, mixed $operator = null, mixed $value = null)
Determine if an item exists in the enumerable.
bool doesntContain(mixed $key, mixed $operator = null, mixed $value = null)
Determine if an item is not contained in the enumerable.
Enumerable crossJoin(array ...$arrays)
Cross join the given iterables, returning all possible permutations.
Enumerable countBy(callable|string $countBy = null)
Count the number of items in the collection by a field or using a callback.
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|string|null $callback = null, bool $strict = false)
Retrieve duplicate items.
Enumerable duplicatesStrict(callable|string|null $callback = null)
Retrieve duplicate items using strict comparison.
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.
mixed first(callable $callback = null, mixed $default = null)
Get the first item from the enumerable passing the given truth test.
Enumerable flatten(int $depth = INF)
Get a flattened list of the items in the collection.
Enumerable flip()
Flip the items in the collection.
mixed get(mixed $key, mixed $default = null)
Get an item 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.
bool hasAny(mixed $key)
Determine if any of the keys exist in the collection.
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 items are empty or not.
bool containsOneItem()
Determine if the collection contains a single item.
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 pluck(string|array $value, string|null $key = null)
Get the values of a given key.
Enumerable map(callable $callback)
Run a map over each of the 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 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 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.
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 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.
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.
LazyCollection sliding(int $size = 2, int $step = 1)
Create chunks representing a "sliding window" view of 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.
mixed sole(mixed $key = null, mixed $operator = null, mixed $value = null)
Get the first item in the collection, but only if exactly one item exists. Otherwise, throw an exception.
mixed firstOrFail(mixed $key = null, mixed $operator = null, mixed $value = null)
Get the first item in the collection but throw an exception if no matching items exist.
Enumerable chunk(int $size)
Chunk the collection into chunks of the given size.
LazyCollection splitIn(int $numberOfGroups)
Split a collection into a certain number of groups, and fill the first groups completely.
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.
LazyCollection sortKeysUsing(callable $callback)
Sort the collection keys using a callback.
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.
LazyCollection takeUntilTimeout(DateTimeInterface $timeout)
Take items in the collection until a given point in time.
Enumerable takeWhile(mixed $value)
Take items in the collection while the given condition is met.
LazyCollection tapEach(callable $callback)
Pass each item in the collection to the given callback, lazily.
LazyCollection undot()
Convert a flatten "dot" notation array into an expanded array.
Enumerable unique(string|callable|null $key = null, bool $strict = false)
Return only unique items from the collection array.
Enumerable values()
Reset the keys on the underlying array.
Enumerable zip(mixed $items)
Zip the collection together with one or more arrays.
e.g. new LazyCollection([1, 2, 3])->zip([4, 5, 6]); => [[1, 4], [2, 5], [3, 6]]
Enumerable pad(int $size, mixed $value)
Pad collection to the specified length with a value.
Traversable getIterator()
Get the values iterator.
int count()
Count the number of items in the collection.
protected Traversable makeIterator(mixed $source)
Make an iterator from the given source.
protected array explodePluckParameters(string|array $value, string|array|null $key)
Explode the "value" and "key" arguments passed to "pluck".
protected LazyCollection passthru(string $method, array $params)
Pass this lazy collection through a method on the collection class.
protected int now()
Get the current time.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/8.x/Illuminate/Support/LazyCollection.html