Как исправить неточные два datetime с помощью php

#php

#php

Вопрос:

У меня есть вопрос относительно моего модуля, я обнаружил, что мои две даты и время не точны, ну, время первой даты имеет значение, однако второе не имеет значения, поэтому, если это так, результат будет нулевым, или я не могу показать какое-либо значение в моей таблицеданные.

Чтобы хорошо продемонстрировать, я покажу вам, ребята, пример вывода, который я уже закодировал.

Вывод

 $datetime1 = new DateTime($res_parent->created_store1);
$datetime2 = new DateTime($res_parent->arl_approved);
$interval = $datetime1->diff($datetime2);

$elapsed = $interval->format('%y years %m months %a days %h hours %i minutes %s seconds');
  

В моем выводе базы данных это выглядит так,

вывод

Ответ №1:

Предполагая, что значения $res_parent верны, в приведенном выше коде нет ничего плохого, хотя вы можете проверить, установлены ли даты перед выполнением операций с датами, и установить строку по умолчанию, если значения даты недоступны:

 if(!empty($res_parent->arl_approved) amp;amp; !empty($res_parent->created_store1){
  $datetime1 = new DateTime('2019-04-11 16:20:03');
  $datetime2 = new DateTime('2019-04-11 16:19:30');
  $interval = $datetime1->diff($datetime2);
  $elapsed = $interval->format('%y years %m months %a days %h hours %i minutes %s seconds');
}else{
  $elapsed = "Not Available";
}
  

Дает нам результат:

 "0 years 0 months 0 days 0 hours 0 minutes 33 seconds"
  

Или

 "Not Available"
  

Пожалуйста, проверьте и убедитесь, что ваш $res_parent объект установлен правильно.

Надеюсь, это поможет,

Комментарии:

1. ПРИВЕТ @Miroslav, что ты имеешь в виду под этим?