Php 我如何为TIMEDIFF使用雄辩?

Php 我如何为TIMEDIFF使用雄辩?,php,laravel,time,timestamp,eloquent,Php,Laravel,Time,Timestamp,Eloquent,基本上,我必须在构建被放弃1小时后删除它们。它给了我一个错误,因为TIMEDIFF未定义。有人能告诉我如何解决这个问题吗?你可以使用雄辩的和DateTime而不是TIMEDIFF public function fire() { Log::info('Delete abandoned builds.'); $builds = Build::where('status', Build::STATUS_ABANDONED) -&

基本上,我必须在构建被放弃1小时后删除它们。它给了我一个错误,因为TIMEDIFF未定义。有人能告诉我如何解决这个问题吗?

你可以使用雄辩的和
DateTime
而不是
TIMEDIFF

public function fire()
{       
    Log::info('Delete abandoned builds.');

    $builds = Build::where('status', Build::STATUS_ABANDONED)
                    ->whereRaw (TIMEDIFF(DATE_FORMAT(NOW(), '%Y-%m-%d %h:%i:%s'), created_at) >= '01:00:00')->get();
                        $buildRepository->delete($build);
    $buildRepository = new BuildRepository();

}
$date = new DateTime;
$date->modify('-60 minutes');
$formatted_date = $date->format('Y-m-d H:i:s');

DB::table('builds')
  ->where('status', Build::STATUS_ABANDONED)
  ->where('created_at','>=',$formatted_date)
  ->delete();