curdate()查询在laravel 5.2中不起作用

时间:2017-08-14 05:40:13

标签: php mysql database laravel

我的查询中有一个问题是CURDATE()无法在我的laravel 5.2

中工作
  

AbsenController @索引

$now = time();
$absen = Absen::with('siswa')->where('level', '=', 'Siswa', 'AND', 
'created_at', '<=', 'CURDATE()')->get();
return view('absen.index')->with('data', $absen);

这是我的Absen表中的记录

Absen Table

2 个答案:

答案 0 :(得分:0)

我不熟悉您的where sytnax。请尝试在WHERE子句中为每个条件包含单独的术语:

$absen = Absen::with('siswa')
    ->where('level', '=', 'Siswa')
    ->where('created_at', '<=', DB::raw('curdate()'))
    ->get();

作为变体,您还可以使用whereRaw()来处理涉及CURDATE()的条件:

$absen = Absen::with('siswa')
    ->where('level', '=', 'Siswa')
    ->whereRaw('created_at <= curdate()')
    ->get();

默认条件是AND,这是您在两个条件之间的关系。如果您想在orWhere()子句中将OR条件合并在一起,请查看WHERE

答案 1 :(得分:0)

$now = time();
$absen = Absen::with('siswa')->where('level', 'Siswa')->where('created_at','<=',\Carbon\Carbon::now())->get();
return view('absen.index')->with('data', $absen);