提前谢谢!我在Laravel中有以下收藏。
$data = collect([
[
'id' => 1,
'filter' => 'brand',
'value' => 'apple'
],
[
'id' => 2,
'filter' => 'color',
'value' => 'red'
],
[
'id' => 3,
'filter' => 'color',
'value' => 'blue'
],
[
'id' => 3,
'filter' => 'storage',
'value' => '8GB'
]
]);
我完全需要这样:
[
"brand" => ["apple"],
"color" => ["red", "blue"],
"storage" => ["8GB"]
]
如何像上面这样格式化?
答案 0 :(得分:1)
我找到了解决方案。
$grouped = $collection->mapToGroups(function ($item, $key) {
return [$item['filter'] => $item['value']];
});
$grouped->toArray();