Laravel collection using map and contains
First, make sure that $unavailableProductions['result']
is a collection.
Second, change your contains
method like this:
$unavailableProducts = $this->unavailableProducts();
$products = $this->products->all();
$allProducts = $products->map(function ($product) use($unavailableProducts) {
return [
'id' => $product->id,
'title' => $product->title,
'available' => $unavailableProducts['result']->contains('id', $product->id),
];
});
The $unavailableProducts['result']->contains('id', $product->id)
will determine if the $unaviableProductions['result']
collection has a key id
where the value is $product->id