【问题标题】:Laravel merge laravel collection attributes into one array / collectionLaravel 将 laravel 集合属性合并到一个数组/集合中
【发布时间】:2018-09-22 17:33:24
【问题描述】:

给定一个模型和关系的 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 },
  ]
];

现在有没有办法合并这些采摘的值?

【问题讨论】:

    标签: laravel laravel-collection


    【解决方案1】:

    啊,我有!

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

    【讨论】:

      猜你喜欢
      • 2017-03-07
      • 2020-08-21
      • 2018-07-22
      • 1970-01-01
      • 2017-07-18
      • 2016-06-05
      • 2017-07-21
      • 1970-01-01
      • 2017-04-29
      相关资源
      最近更新 更多