通过查看此代码:
if($status == 'processed'){
DB::connection('mydb')
->table('logs')
->where('id', $id)
->update(array('status' => $status));
}else{
DB::connection('mydb')
->table('logs')
->where('id', $id)
->where('id2', $id2)
->update(array('status' => $status));
}
代码的语义没有多大意义,因为它是来自更大文件的摘录。无论如何我都会关注如何在给定条件之后连接更多方法 像上面那样
if(A)
DB->method1()->method2()
else
DB->method1()->method3()->method2()
关于如何以更优雅的方式写这个的任何想法?
由于
答案 0 :(得分:2)
您可以向同一查询对象添加where
子句:
$query = DB::connection('mydb')->table('logs')->where('id', $id);
if ($status != 'processed') {
$query->where('id2', $id2);
}
$query->update(['status' => $status]);