У меня есть дата окончания в базе данных
я получаю текущую дату, предположим, в UTC
class Datecalc
{
public $year;
public $month;
public $day;
public $hour;
public $min;
public $sec;
function diff($start,$end = false)
{
if($start > $end)
{
$this->day = 0;
$this->hour = "00";
$this->min = "00";
$this->sec = "00";
return false;
}
if(!$end) { $end = time(); }
if(!is_numeric($start) || !is_numeric($end)) { return false; }
$start = date('Y-m-d H:i:s',$start);
$end = date('Y-m-d H:i:s',$end);
$d_start = new DateTime($start);
$d_end = new DateTime($end);
$diff = $d_start->diff($d_end);
$this->year = $diff->format('%y');
$this->month = $diff->format('%m');
$this->day = $diff->format('%d');
$this->hour = $diff->format('%H');
$this->min = $diff->format('%I');
$this->sec = $diff->format('%S');
return true;
}
}
Я использую эту функцию для вычисления разницы во времени, нопроблема в том, что я не могу сосчитать дни до 99, а когда дата 00:00:00, дни -1 и его значение равно 98 и время 23:59:59, в этом коде все хорошо, но есличисло дней становится больше 30, оно сбрасывается на 01, я думаю, вы понимаете, что я пытаюсь сказать, пожалуйста, помогите !!
другими словами, мне нужно считать дни отдельно, а время нужнобыть привязанным к этим дням