在这种情况下,我需要创建一个查询,将根据php参数的变化,我怎么能挂载雄辩的查询一块一块?
就像在这个例子中:
if($id_curso > 0)
$aulas = Aula
::select( 'fields' )
->where('id_curso', 3)
->where('condition_1');
else
$aulas = Aula
::select( 'fields' )
->where('condition_1');
return $aulas->get();
这样做是有效果的,但是当我改变SELECT或WHERE时,我必须在这两种情况下都改变,是否有一种方法可以这样做:
$aulas = Aula
::select( 'fields' );
if($id_curso > 0)
$aulas.= Aula::where('id_curso', 3);
$aulas.= Aula::where('condition_1');
return $aulas->get();
就像亚当回答的那样,很简单吗?
$aulas = Aula
::select('fields');
if($id_curso > 0)
$aulas->where('id_curso', $id_curso);
$aulas->where('condiotion_1');
return $aulas->get();
$aulas是一个对象,我认为它是查询字符串,所以谢谢Adam。
根据我的记忆,你可以这样做:
$aulas = Aula::select( 'fields' );
if($id_curso > 0) {
$aulas->where('id_curso', 3);
} else {
$aulas->where('condition_1');
}
$aulas->get();
如果这不起作用,您可以这样做(不确定它是否会从模型运行或必须从DB::table(),您将需要"使用DB;"):
$query = DB::select('table');
if($id_curso > 0) {
$query->where('id_curso', 3);
} else {
$query->where('condition_1');
}
$query->get();