2 回答
TA贡献1828条经验 获得超4个赞
您可以重建您的表单,注意name属性:
<form method="POST" action="{{ route('action') }}">
<table>
<!-- btw, where's tr tag? -->
<td>
<input name="items[0][name]" value={{ $item->price }}>
</td>
<td>
<input name="items[0][price]" value={{ $item->name }}>
</td>
<td>
<input name="items[1][name]" value={{ $item->price }}>
</td>
<td>
<input name="items[1][price]" value={{ $item->name }}>
</td>
<!-- etc -->
<table>
</form>
通过这样的命名,您将拥有$_POST['items']所需结构的子数组。
注意属性中的显式索引name。类似的命名item[][name]将无法正常工作。
TA贡献1757条经验 获得超8个赞
在渲染模板之前,您可以使用array_combine ( array $keys , array $values )处理数据:array
$items = [
"name" => [
0 => "camera",
1 => "toy"
],
"price" => [
0 => "120",
1 => "120"
]
];
$items = array_combine($data['name'], $data['price']);
渲染后,在模板中使用foreach()您可以在表中填充您的数据
<table>
@foreach($items as $name => $price)
<tr>
<td>
<input name="name[]" value={{ $name }}>
</td>
<td>
<input name="price[]" value={{ $price }}>
</td>
</tr>
@endforeach
<table>
- 2 回答
- 0 关注
- 126 浏览
添加回答
举报