我有一个带有四个传入数组的方法。
前两个数组$whereColumns[]
和$updateColumns[]
包含列名。
第三列$whereFilters[]
包含where
方法的过滤器。
最后一个$updateFilters[]
包含更新值。
如何只使用多个where
方法和多个更新列生成一个搜索查询?现在我只知道如何在循环中使用多个where
方法创建查询。
for($i=0; $<count($whereColumns); $i++){
$query->where($whereColumns[$i], '=', $whereFilters[$i]);
}
$result = $query->get();
但是如何使用update
生成这样的查询(但这不起作用):
for($i=0; $i<count($updateColumns); $i++){
$query->update($updateColumns[$i] => $updateFilters[$i]);
}
$result = $query->get();
这两个循环都应该生成一个搜索查询以更新表数据。
答案 0 :(得分:0)
您可以遍历$updateColumns
并创建一个包含所有列和值的数组,如下所示:
$updateArray = [$column[0] => $value[0], $column[1] => $value[1]];
然后你可以将整个数组放入查询
$query->update($updateArray);