Php 将键上的集合合并为Laravel中的嵌套对象

Php 将键上的集合合并为Laravel中的嵌套对象,php,laravel,Php,Laravel,给定3个集合: $links = new Collection($array_link_objects); $images = new Collection($array_image_objects); $combined = new Collection(); 合并它们,使以下内容为真: $combined[$i]->link = $links[$i]; $combined[$i]->image = $images[$i]; 编辑:通常不需要在键上合并两个数组并将它们嵌套到属性

给定3个集合:

$links = new Collection($array_link_objects);
$images = new Collection($array_image_objects);
$combined = new Collection();
合并它们,使以下内容为真:

$combined[$i]->link = $links[$i];
$combined[$i]->image = $images[$i];

编辑:通常不需要在键上合并两个数组并将它们嵌套到属性中。但是如果你这样做了,这是可行的。

这里有一种方法可以做到

$merged = combine(['link' => $links, 'image' => $image]);

public function combine($collections) {
  $merged = new Collection();
  $max = count($collections[key($collections)]);
  for($i = 0; $i < $max; $i++)
  {
    $item = new \stdClass();
    foreach($collections as $key => $collection) {
      $item->{$key} = $collection[$i];
    }
    $merged->add($item);
  }
  return $merged;
}

你把它们合并了吗?第二个组合中也缺少$。不,我想使用集合函数而不是嵌套的foreach语句合并它们。