Мое решение найти разницу между двумя датами здесь. С помощью этой функции вы можете найти различия, такие как секунды, минуты, часы, дни, годы и месяцы.
function alihan_diff_dates($date = null, $diff = "minutes") {
$start_date = new DateTime($date);
$since_start = $start_date->diff(new DateTime( date('Y-m-d H:i:s') )); // date now
print_r($since_start);
switch ($diff) {
case 'seconds':
return $since_start->s;
break;
case 'minutes':
return $since_start->i;
break;
case 'hours':
return $since_start->h;
break;
case 'days':
return $since_start->d;
break;
default:
# code...
break;
}
}
Вы можете разработать эту функцию. Я проверил и работает для меня. Вывод объекта DateInterval здесь:
/*
DateInterval Object ( [y] => 0 [m] => 0 [d] => 0 [h] => 0 [i] => 5 [s] => 13 [f] => 0 [weekday] => 0 [weekday_behavior] => 0 [first_last_day_of] => 0 [invert] => 0 [days] => 0 [special_type] => 0 [special_amount] => 0 [have_weekday_relative] => 0 [have_special_relative] => 0 )
*/
Использование функции:
$ date = прошедшая дата,
$ diff = тип, например: "минуты", "дни", "секунды"
$diff_mins = alihan_diff_dates("2019-03-24 13:24:19", "minutes");
Удачи.