Как получить разницу времени?

135
18 марта 2018, 22:10

Подскажите, как получить разницу во времени?
Например, есть два времени 14:15:00 и 15:00:00, надо получить разницу и если разница меньше 59:00:00, то тогда выполнить действие. Пытаюсь сделать что то вроде:

$datetime1 = date_create('15:00:00 ');
$datetime2 = date_create('12:01:00');
$interval = date_diff($datetime1, $datetime2);
$time=$interval->format('%H:%i');
$send=date_create('00:59:00');
if($time<$send) 
{
 echo 'шлём';
echo '</br>';
echo $send;
}else{
 echo 'не шлём';
}

но $send оказывается почему то пустой...

Answer 1

Используй метод/функцию date_diff http://php.net/manual/ru/datetime.diff.php

Answer 2

Если это время в часах, минутах, секундах, то переводите все в секунды, отнимаете, и переводите обратно в нужный формат

sumsec1 = hour*3600 + minutes*60 + seconds; //Первое время в секунды
sumsec2 = hour*3600 + minutes*60 + seconds; //Второе
res = sumsec2 - sumsec1;
if (res > 59*3600) { выполнить действие }

Этот алгоритм можно использовать в любом языке помимо php

READ ALSO
Правило для urlManager

Правило для urlManager

Необходимо сделать так, чтобы при url вида /catalog загружалась одна модель, при /catalog?id=1 уже другая модель, а при /catalog?id=1&show=1 эта же модель, но с другой...

161
Округление в запросе [требует правки]

Округление в запросе [требует правки]

ЗдравствуйтеВозникает ошибка при выполнение некоторых запросов с большими числами

177
Как передать значение переменной из Bash в PHP?

Как передать значение переменной из Bash в PHP?

Есть PHP-скрипт, который вызывает системные команды; в нём нужно обработать некоторые данные, которые должен ввести пользовательПример на Bash:

172
htacess - переадресация виртуальных ссылок с отловом гет параметров

htacess - переадресация виртуальных ссылок с отловом гет параметров

Приветствую друзьяЕсть одностраничный сайт, где единственная страница index

145