Intereting Posts
Как получить массив PHP $ _GET? Создание прокси для подмены iPhone-агента пользователя в PHP? Как я могу аннулировать страницу в кеше браузера с клиентской стороны? Как я могу реализовать commit / rollback для MySQL в PHP? Начальная перезагрузка сервера на Ajax-вызов ZF2 – Итерирование по HydratingResultSet Как определить, является ли строка действительной JSON? Любые ошибки с этим регулярным выражением, которые соответствуют амперсандам, которые еще не закодированы PHP: Как отправить электронную почту с вложением с помощью smtp-настроек? как конвертировать несколько html-файлов с помощью Dompdf? cURL Multi Threading? Walmart API продавца POST не работает, Дает 401 несанкционированных только на PHP Предотвратить создание встроенного веб-сайта Эхо-специфические атрибуты продукта и метаданные в корзине WooCommerce Невозможно добавить атрибут с префиксом пространства имен с помощью PHP Simplexml

вычислить разницу между двумя временными метками в php

Я использую 2 временную метку в моей таблице, которая является точкой отсчета времени начала и текущей меткой времени. конечная точка времени-времени и значение по умолчанию 0000-00-00 00:00:00

как рассчитать разницу между 2 метками времени в php starttime: 2016-11-30 03:55:06 endtimetime: 2016-11-30 11:55:06

Solutions Collecting From Web of "вычислить разницу между двумя временными метками в php"

Следует избегать любого процедурного способа. Используйте метод ООП для разницы во времени:

$datetime1 = new DateTime('2016-11-30 03:55:06');//start time $datetime2 = new DateTime('2016-11-30 11:55:06');//end time $interval = $datetime1->diff($datetime2); echo $interval->format('%Y years %m months %d days %H hours %i minutes %s seconds');//00 years 0 months 0 days 08 hours 0 minutes 0 seconds 

Вы можете настроить формат разницы в соответствии с вашими потребностями.

 %Y - use for difference in year %m - use for difference in months %d - use for difference in days %H - use for difference in hours (24 hour format) %i - use for difference in minutes %s - use for difference in seconds 

Вы можете удалить любое из вышеуказанных значений в соответствии с вашими потребностями. Например, если вас интересует только часовая разница, и вы знаете, что разница не может превышать 24 часа, то используйте только %H

Если вы хотите иметь полную разницу в секундах, вы можете использовать:

 echo $difference_in_seconds = strtotime('2016-11-30 11:55:06') - strtotime('2016-11-30 03:55:06');//28800 

Зависит от вашей потребности и окончательного формата, в котором вы хотите иметь разницу во времени.

Для справки: http://php.net/manual/en/datetime.diff.php

Я надеюсь, что это помогает

Вы можете преобразовать отметки времени в временную метку unix (время в секундах), используя php strtotime, а затем принять разницу. Теперь у вас есть разница во времени в секундах и вы можете конвертировать в то, что вам нужно … часы, минуты, дни

http://php.net/manual/en/function.strtotime.php

например:

 $ts1 = strtotime($start); $ts2 = strtotime($end); $seconds_diff = $ts2 - $ts1; $time = ($seconds_diff/3600);