Intereting Posts
Очистить данные формы после успеха codeigniter, используя php not jquery Справка Preg_match. Не удается прочитать строку из электронной почты. Устранение неполадок "ошибка синтаксического анализа, неожиданная ошибка"> " Использование основных вызовов AJAX в Magento Является ли память, выделенная PHP одним запросом, всегда выпущенным в конце? Строка PHP для многоуровневого массива интеграция формы sagepay – ошибка 3045 .htaccess php_value auto_prepend_file делает ошибку 500. Как я могу это исправить? Удаление акцентов без использования iconv Удалить строку из связанного объекта во многих отношениях во многих отношениях в Doctrine2 Google Geocoding API дает разные результаты для моего сервера и моего веб-браузера Переопределить Magento Config Добавление загружаемого изображения при запуске PHP-скрипта PHP – изменить специальные символы MS Word (^ l, ^ p, ^ s) на "," У меня есть таблица SQL. С запросом SQL с PHP я хочу сохранить результат этого запроса в переменной.

Получить общую разницу во времени между двумя датами, используя php

Возможный дубликат:
Как рассчитать разницу между двумя датами с помощью PHP?

Здесь я упоминаю два раза с его датой

2008-12-13 10:42:00

2010-10-20 08:10:00

Я хочу получить общую разницу во времени в формате (h: m: s)

Если вы используете или можете использовать PHP 5.3.x или более позднюю версию, вы можете использовать функциональность объекта DateTime:

$date_a = new DateTime('2010-10-20 08:10:00'); $date_b = new DateTime('2008-12-13 10:42:00'); $interval = date_diff($date_a,$date_b); echo $interval->format('%h:%i:%s'); 

Вы можете играть в формате различными способами, и как только у вас есть даты в объектах DateTime, вы можете использовать множество различных функций, например, сравнение с помощью обычных операторов. Подробнее см. В руководстве: http://us3.php.net/manual/en/datetime.diff.php

что им использовать:

 $seconds = strtotime("2010-10-20 08:10:00") - strtotime("2008-12-13 10:42:00"); $days = floor($seconds / 86400); $hours = floor(($seconds - ($days * 86400)) / 3600); $minutes = floor(($seconds - ($days * 86400) - ($hours * 3600))/60); $seconds = floor(($seconds - ($days * 86400) - ($hours * 3600) - ($minutes*60))); 

вы можете сейчас форматировать

Вы можете использовать функцию strtotime, чтобы превратить время в целые числа и вычесть их.

 $time1 = strtotime("2008-12-13 10:42:00"); $time2 = strtotime("2010-10-20 08:10:00"); $diff = $time2-$time1; // the difference in int. then you can divide by 60,60,24 and // so on to get the h:m:s out of it