如果我dd($items)
,则结果如下:
我想为每个数组添加数字
所以第一个数组存在键值为1的键号
第二个数组,存在值为2的键号
等
我这样尝试:
$items->map(function ($item) {
$item['number'] = 1;
return $item;
});
数量没有增加。我很困惑要柜台
我该如何解决这个问题?
答案 0 :(得分:4)
您可以这样尝试
$newItems = $items->map(function ($item, $index) {
$item['number'] = $index + 1;
return $item;
});
编辑:基于评论(我不建议这样做,因为那样便无法从雄辩的模型中受益。它只是返回一个数组)
$newItems = $items->map(function ($item, $index) {
$number = ['number' => $index + 1];
return $number + $item->toArray();
});
答案 1 :(得分:0)
$counter=1;
$items->map(function ($item) use(&$counter){
$item['number'] = $counter++;
return $item;
});
答案 2 :(得分:0)
您可以使用array_merge
$newItems = $items->map(function ($item, $index) {
return array_merge(array("number" => $index + 1), $item);;
});