2013-03-13 3 views
4

В php у меня есть два раза - 11:00:00 и 12:45:00. Я хочу получить разницу между ними за считанные минуты, в этом случае 105 минут. Каким образом это можно сделать?PHP - время минус время до минут

Спасибо!

+0

PHP strtotime(), mysql TIMEDIFF() – Waygood

+0

DateTime (http://www.php.net/manual/en/class.datetime.php); его метод diff() (http://www.php.net/manual/en/datetime.diff.php); и DateInterval (http://php.net/manual/en/class.dateinterval.php) с помощью метода format() (http://www.php.net/manual/en/dateinterval.format.php) –

ответ

10

Здесь вы идете:

(strtotime('12:45:00') - strtotime('11:00:00'))/60 

strtotime() является очень полезной функцией. Он возвращает Unix timestamp для самых разных времен и дат. Итак, если вы берете две метки времени и вычитаете их, то у вас есть разница в секундах. Разделите на 60, чтобы получить минуты.

+0

@ user1985273 Не забудьте принять ответ, если он ответил на ваш вопрос. –

4
$time_diff = strtotime('2013-03-13 12:45:00') - strtotime('2013-03-13 11:00:00'); 
    echo $time_diff/60; 

Я просто указал, что даты не уверены, что если я сохраню временную часть, она вернет правильный diff или нет.

EDIT

Я просто проверял это работает без даты тоже ...

$time_diff = strtotime('12:45:00') - strtotime('11:00:00'); 
    echo $time_diff/60; 

Так ответить вам вопрос - StrToTime() возвращает метку времени (количество секунд, прошедших с 1 января 1970 00: 00:00 UTC), поэтому вы просто разделите его на 60, чтобы преобразовать результат в минуты.

+0

Получил тот же андерсор от Duotrigesimal, но все равно, спасибо! :) – user1985273

Смежные вопросы