所以我在下面有一个查询,只有在我只传递一个数据或更新数据时才有效,但是当有2个或更多数据时,它不再有效:
public function update($id){
$data = $this->request->all();
$result = array($data);
foreach($result as $x => $x_value) {
$emp_key = $x_value['data'];
}
DB::table('employee')->where('emp_key', $emp_key)->update([
'group_code' => $id,
]);
}
我想将每个group_code
的{{1}}更新为emp_key
。
我0
时的示例结果,结果如下:
var_dump($result)
print_r输出:
array(1) {
[0]=>
array(1) {
["data"]=>
array(2) {
[0]=>
string(6) "123bcd"
[1]=>
string(6) "635bdd"
}
}
}
有人可以帮我吗?
答案 0 :(得分:0)
只需在foreach循环中移动更新查询:
foreach($data['data'] as $x => $emp_key) {
DB::table('employee')->where('emp_key', $emp_key)->update([
'group_code' => $id,
]);
}
您之前的代码所做的是$emp_key
变量仅存储循环中的最后一个值,因此它是您查询中唯一更新的值