Laravel - Collections - Method Contains
The contains
method determines whether the collection contains a given item. You may pass a closure to the contains
method to determine if an element exists in the collection matching a given truth test:
$collection = collect([1, 2, 3, 4, 5]);
$collection->contains(function ($value, $key) {
return $value > 5;
});
// false
Alternatively, you may pass a string to the contains
method to determine whether the collection contains a given item value:
$collection = collect(['name' => 'Desk', 'price' => 100]);
$collection->contains('Desk');
// true
$collection->contains('New York');
// false
You may also pass a key / value pair to the contains
method, which will determine if the given pair exists in the collection:
$collection = collect([
['product' => 'Desk', 'price' => 200],
['product' => 'Chair', 'price' => 100],
]);
$collection->contains('product', 'Bookcase');
// false
The contains
method uses "loose" comparisons when checking item values, meaning a string with an integer value will be considered equal to an integer of the same value. Use the containsStrict
method to filter using "strict" comparisons.