如果我需要创建一个将根据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。
答案 0 :(得分:1)
从记忆中脱离头顶你可以做类似的事情:
$aulas = Aula::select( 'fields' );
if($id_curso > 0) {
$aulas->where('id_curso', 3);
} else {
$aulas->where('condition_1');
}
$aulas->get();
如果这个剂量工作你可以这样做(不确定它是从模型运行还是必须来自DB :: table()),你需要"使用DB;&#34 ;也是):
$query = DB::select('table');
if($id_curso > 0) {
$query->where('id_curso', 3);
} else {
$query->where('condition_1');
}
$query->get();