【问题标题】:Laravel Collection : Remove collection grouping after groupBy()Laravel 集合:在 groupBy() 之后删除集合分组
【发布时间】:2019-11-15 18:27:03
【问题描述】:

collect($vars)->groupBy() 返回格式

[
    'catgeory' => [
        ['id' => 1, 'name' => 'name1', 'type' => 'category'],
        ['id' => 2, 'name' => 'name4', 'type' => 'category'],
    ]
    'name' => ['id' => 3, 'name' => 'name2', 'type' => 'name'],
    'value' => ['id' => 4, 'name' => 'name3', 'type' => 'value']
]

更改为这样的最佳方法是什么,删除 分组,但最好使用集合本身

[
    ['id' => 1, 'name' => 'name1', 'type' => 'category'],
    ['id' => 2, 'name' => 'name4', 'type' => 'category'],
    ['id' => 3, 'name' => 'name2', 'type' => 'name'],
    ['id' => 4, 'name' => 'name3', 'type' => 'value'],
]

原来的数组是这样的:

[
    ['id' => 3, 'name' => 'name2', 'type' => 'name'],
    ['id' => 1, 'name' => 'name1', 'type' => 'category'],
    ['id' => 2, 'name' => 'name4', 'type' => 'category'],
    ['id' => 4, 'name' => 'name3', 'type' => 'value'],
]

【问题讨论】:

  • 分享你的原始数组,值为$vars ?

标签: arrays laravel collections


【解决方案1】:

通过使用深度为 1 的 flatten()

collect($vars)->groupBy('type')->flatten(1);

【讨论】:

    猜你喜欢
    • 2019-01-30
    • 1970-01-01
    • 1970-01-01
    • 2017-04-12
    • 2016-03-16
    • 2017-08-23
    • 1970-01-01
    • 2021-06-22
    • 2017-11-20
    相关资源
    最近更新 更多