Вы играли дату 2 как строку, которую следует рассматривать как объект datetime, чтобы получить разницу между двумя объектами datetime.
function do_diifernce($date_1, $date_2)
{
$createDate1 = new DateTime($date_1);
$createDate2 = new DateTime($date_2);
$difference = $createDate2->diff($createDate1);
$sign = ($createDate1 < $createDate2 ? '-':'+');
$difference->total_difference = $difference->format("%r%a");
return $difference;
}
$databse_date = "2019-05-01 00:00:00";
$today_date = "2019-05-06 10:48:01";
$comparison = do_diifernce($databse_date, $today_date);
print_r($comparison);die;
Вот официальный документ .
Вы проверяете этот массив, поскольку нет разницы между годом и месяцем, так как обе даты принадлежат одному и тому же месяцу и году, поэтому его приход 0.0