길고도 짧은 이야기 동일한 데이터베이스의 레코드 다른 :Laravel의 날짜는
public function betweenDate($startDate,$startTime,$endDate,$endTime){
return DB::table('tablice')->where([['datum', '>', $startDate." ".$startTime], ['datum', '<', $endDate." ".$endTime]])->get();
}
내가 날짜 사이의 데이터베이스에서 레코드를 검색해야하고,이 코드가 작동하지만 하나의 간단한 오류와. 반환 된 날짜는 ... {"id":62667,"br_tablice":"LK493","moguce_tablice":"LK493,LK8493,LK4293,LK4J93,LK893,L8493,LKB493,","ostalo":null,"datum":"2017-03-17 19:00:14"} ...
입니다. 반환 된 날짜는 2017-03-17 19:00:14
이지만 데이터베이스는 2017-03-17 20:00:14
이며 그 이유는 알 수 없습니다. .env
에서 데이터베이스 사용과 동일한 APP_TIMEZONE=CET
을 설정합니다. 모든 시간대를 사용 했으므로 시간대가 변경되지 않습니다.
데이터베이스가 UTC (또는 +2 GMT)로 설정되어있는 것처럼 보입니다. – apokryfos
'SELECT @@ system_time_zone;으로 선택하고 응답은'stdClass Object ([@@ system_time_zone] => CET)'입니다. – Aleksandar
시간대 문제 여야합니다. 시간을 추가하면됩니다 (빠른 수정). 'strtotime ($ time) + 3600; // 1 시간 추가' – Onix