我希望用户每天只能创建一定数量的提交。这就是我在CakePHP中用来获取当天用户提交的提交数量并且有效的方法:
$submitted_today = $this->Submission->find('count', array(
'conditions' => array(
'Submission.ip' => $_SERVER['REMOTE_ADDR'],
'Submission.created >= CURRENT_DATE',
'Submission.created < CURRENT_DATE + INTERVAL 1 DAY'
)
));
这是我在Laravel中提出的:
$submitted_today = DB::table('submissions')
->where('ip', '=', $_SERVER['REMOTE_ADDR'])
->where('created', '>=', 'CURRENT_DATE')
->where('created', '<', 'CURRENT_DATE + INTERVAL 1 DAY')
->get();
但它不起作用。它出什么问题了? MySQL日期术语被解释为字符串可能有什么问题吗?
UPDATE:以下是使用whereRaw(显示)工作的代码。
$submitted_today = DB::table('submissions')
->where('ip', '=', $_SERVER['REMOTE_ADDR'])
->whereRaw('created >= CURRENT_DATE')
->whereRaw('created < CURRENT_DATE + INTERVAL 1 DAY')
->count();
答案 0 :(得分:1)
尝试使用 - &gt; count()获取no check Laravel Documentation
$submitted_today = DB::table('submissions')
->where('ip', '=', $_SERVER['REMOTE_ADDR'])
->where('created', '>=', 'CURRENT_DATE')
->where('created', '<', 'CURRENT_DATE + INTERVAL 1 DAY')
->count();