使用where语句时可以更新和保存laravel集合,例如
$collection = collect([
['product' => 'Desk', 'price' => 200],
['product' => 'Chair', 'price' => 100],
['product' => 'Bookcase', 'price' => 150],
['product' => 'Door', 'price' => 100],
]);
如何更改100到200之间的所有价格或者像#39; Desk'到'橱柜'?
答案 0 :(得分:0)
我不认为你可以通过使用where来做到这一点,因为在哪里进行过滤并根据你的谓词返回项目。为什么不使用常规array_map()
函数??
$new_collection = array_map(function($item) {
if($item['price'] == 100) {
$item['price'] = 200;
}
return $item;
}, $collection);