假设我有2个集合,它们都有phone
属性:
$contacts = Contact::all();
$optouts = Optout::all();
我想更新$contacts
集合并删除所有已选择退出的集合。所以我想删除$contacts
中phone
出现的所有$optouts
。
我该怎么做?
答案 0 :(得分:2)
$contacts = Contact::all();
$optouts = Optout::all()->pluck('phone');
$filtered = $contacts->whereNotIn('phone', $optouts);
答案 1 :(得分:1)
一个选项是:
$phones = $optouts->pluck('phone')->toArray();
$newContacts = $contacts->reject(function ($contact) use ($phones) {
return in_array($contact->phone, $phones);
});