I have 2 collections of models.
For example
$full = collect([
[
'name' => 'name1', //id was omitted intentionally
],
[
'name' => 'name2', //id was omitted intentionally
],
[
'name' => 'name3', //id was omitted intentionally
],
]);
$diff = collect([
[
'id' => 6,
'name' => 'name1',
],
]);
and I want to receive such a result after something like this
$full->diff($full);
$result = [
[
'name' => 'name2',
],
[
'name' => 'name3',
],
];
How to achieve that without filter()
or reject()
with contains()
in a neater way?
I haven't found a neater approach than
$profiles->reject(function ($profile) use ($existingProfiles) {
return $existingProfiles->pluck('name')->contains($profile->name);
})->values()
But thanks to everyone. I've upvoted your questions ;)