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. |
Methods
static void | macro(string $name, callable $macro) Register a custom macro. | 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. | |
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(null $key = null) Get the median of a given key. | |
array | mode(mixed $key = null) Get the mode of a given key. | |
Collection | collapse() Collapse the collection of items into a single array. | |
bool | contains(mixed $key, 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 | diff(mixed $items) Get the items in the collection that 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. | |
$this | each(callable $callback) Execute a callback over each item. | |
Collection | every(int $step, int $offset) Create a new collection consisting of every n-th element. | |
Collection | except(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 | where(string $key, mixed $operator, mixed $value = null) Filter items by the given key value pair. | |
Closure | operatorForWhere(string $key, string $operator, mixed $value) 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. | |
mixed | first(callable $callback = null, mixed $default = null) Get the first item from the collection. | |
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(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. | |
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. | |
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 $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 | 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. | |
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 | 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 | 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 $callback) 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. | |
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. | |
mixed | random(int $amount = 1) Get one or more items randomly from the collection. | |
mixed | reduce(callable $callback, mixed $initial = null) Reduce the collection to a single value. | |
Collection | reject(callable|mixed $callback) Create a collection of all elements that do not pass a given truth test. | |
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 | 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 | 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(string $value) Get a value retrieving callback. | |
Collection | zip(mixed $items) Zip the collection together with one or more arrays. | |
array | toArray() Get the collection of items as a plain array. | |
array | jsonSerialize() Convert the object into something JSON serializable. | |
string | toJson(int $options) 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 | 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. |
Details
static void macro(string $name, callable $macro)
Register a custom macro.
static bool hasMacro(string $name)
Checks if macro is registered.
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 $items = [])
Create a new collection.
static Collection make(mixed $items = [])
Create a new collection instance if the value isn't one already.
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(null $key = null)
Get the median of a given key.
array mode(mixed $key = null)
Get the mode of a given key.
Collection collapse()
Collapse the collection of items into a single array.
bool contains(mixed $key, 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 diff(mixed $items)
Get the items in the collection that 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.
$this each(callable $callback)
Execute a callback over each item.
Collection every(int $step, int $offset)
Create a new collection consisting of every n-th element.
Collection except(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 where(string $key, mixed $operator, mixed $value = null)
Filter items by the given key value pair.
protected Closure operatorForWhere(string $key, string $operator, mixed $value)
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.
mixed first(callable $callback = null, mixed $default = null)
Get the first item from the collection.
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(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.
bool isEmpty()
Determine if the collection is empty or not.
bool isNotEmpty()
Determine if the collection is not empty.
protected bool useAsCallable(mixed $value)
Determine if the given value is callable, but not a 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 $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 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.
Collection flatMap(callable $callback)
Map a collection and flatten the result by a single level.
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 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 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 $callback)
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.
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.
mixed random(int $amount = 1)
Get one or more items randomly from the collection.
mixed reduce(callable $callback, mixed $initial = null)
Reduce the collection to a single value.
Collection reject(callable|mixed $callback)
Create a collection of all elements that do not pass a given truth test.
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 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 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.
protected callable valueRetriever(string $value)
Get a value retrieving callback.
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]]
array toArray()
Get the collection of items as a plain array.
array jsonSerialize()
Convert the object into something JSON serializable.
string toJson(int $options)
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 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.
protected array getArrayableItems(mixed $items)
Results array of items from Collection or Arrayable.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.3/Illuminate/Support/Collection.html