将条件放入CodeIgniter ActiveRecord的最干净方法



我需要将条件放入CodeIgniter ActiveRecord中,这是我的代码:

public function getData($numb, $period, $status){
$this->db->select("COUNT(*) AS jml")
->from()
->where_not_in();
if($status !== 'all'){
$this->db->where("LAYANAN.TGL_LAYANAN BETWEEN DATEADD(" . $period ."," . $numb .", GETDATE()) AND GETDATE()");
}
$this->db->where_in()
->group_by("");
return $query = $this->db->get();
}

我还需要在where语句中放入$period$numb变量。它可以工作,但我真的不喜欢我的代码的样子。它看起来很脏。你们能给我解决方案,以实现更清洁的代码吗?感谢

public function getData($numb, $period, $status){
$this->db->select("COUNT(*) AS jml")
->from()
->where_not_in()
->where_in()
->group_by("");
if($status !== 'all'){
$this->db->where("LAYANAN.TGL_LAYANAN BETWEEN DATEADD(" . $period ."," . $numb .", GETDATE()) AND GETDATE()");
}
return $query = $this->db->get();

}

对整个字符串使用双引号,对DATEADD的参数使用单引号

$this->db->where("LAYANAN.TGL_LAYANAN 
BETWEEN DATEADD(`$period`,`$numb`, GETDATE()) AND GETDATE()");

相关内容

  • 没有找到相关文章

最新更新