PHP:直接比较H:i中的两个时间,判断新的时间是否在00:00之前

PHP: Directly compare two times in H:i and determine if the new time is before 00:00

我目前有一个开始和结束时间,格式为“00:00”,例如H:i。我目前正在尝试从时间中删除 4 小时,然后确定新时间是否是前一天,例如在 00:00.

之前

一个例子:

$oldStart =  '00:00';
$oldStart = date("H:i", strtotime($oldStart));
$oldEnd = '00:30';
$oldEnd = date("H:i", strtotime($oldEnd));
$newStart = date("H:i", strtotime('-4 hours', $oldStart));
$newEnd = date("H:i", strtotime('-4 hours', $oldEnd));
$dayStart = date("H:i", strtotime('00:00'));
if($newStart < $dayStart) {
    echo 'day before<br>';
} else {
    echo 'current day<br>';
}

我希望这会回显 'day before',因为现在时间晚了 4 小时,但它正在回显 'current day'。我看不出哪里错了...

就用这个:

$old = "4:00";
$dt = new DateTime($old);
$dt->modify("-4 hours");
$new = $dt->format("Y-m-d");
if(date("Y-m-d", strtotime($old)) > $new){
    echo "Day before";
} else {
    echo "Same day";
}