Laravel将laravel集合属性合并到一个数组/集合中

时间:2018-04-12 14:03:12

标签: laravel laravel-collection

给出了类似模型和关系的laravel集合:

$usersAndBookings = [
  {
    id : 1,
    bookings : [
      { id : 1 },
      { id : 2 },
      { id : 3 },
    ]
  },
  {
    id : 2,
    bookings : [
      { id : 14 },
      { id : 15 },
    ]
  },
  {
    id : 3,
    bookings : [
      { id : 21 },
      { id : 22 },
      { id : 23 },
      { id : 24 },
    ]
  },
];

有没有办法合并所有bookings,才能有效地获得

$bookings = [
  { id : 1 },
  { id : 2 },
  { id : 3 },
  { id : 14 },
  { id : 15 },
  { id : 21 },
  { id : 22 },
  { id : 23 },
  { id : 24 },
];

我试过了:

$usersAndBookings->pluck('bookings');

这几乎可行。它给了我:

$bookings = [
  [
    { id : 1 },
    { id : 2 },
    { id : 3 },
  ],
  [
    { id : 14 },
    { id : 15 },
  ],
  [
    { id : 21 },
    { id : 22 },
    { id : 23 },
    { id : 24 },
  ]
];

现在有办法合并这些弹拨的值吗?

1 个答案:

答案 0 :(得分:0)

啊,我拥有它!

$bookings = $usersAndBookings->pluck('bookings')->collapse();;