我想用一种颜色和多个图像动态添加表格网格,但在 Controller for 循环中我得到 undefined offset :2 错误
这是我的网格 html 代码:
<div class="form-group">
<label class="col-sm-2 control-label">Image</label>
<input type="number" class="form-control" name="imgcolor[]" />
<div class="field col-sm-10" align="left">
<input type="file" class="files" name="image[0][]" multiple />
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">Image</label>
<input type="number" class="form-control" name="imgcolor[]" />
<div class="field col-sm-10" align="left">
<input type="file" class="files" name="image[1][]" multiple />
</div>
</div>
在我的 Controller 代码中:
$input = $request->all();
$color = $request->input('imgcolor');
for($i=0; $i <= count($input['imgcolor']); $i++) {
for($j=0; $j <= count($request->image[$i]); $j++) { // here Undefined offset: 2
$data = $request->file('image')[$i][$j];
$imagename = $data->getClientOriginalName();
$data->move('uploads/product/', $imagename);
Image::create([
'product_id' => $product->id,
'color_id' => $color[$i],
'image' => $imagename
]);
}
}
实际上我需要将数据存储在图像表中,例如一种颜色的多个图像。
最佳答案
替换$i = count($input['imgcolor']);
与 $i < count($input['imgcolor']);
。
与 $j
的内循环相同计数器。
关于php - Laravel 未定义偏移量 : 2 in for loop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57061566/