2012-11-13 14 views
1

Возможный дубликат:
Calculate number of hours between 2 dates in PHPразница часов между двумя датами (целое)

Как я могу получить количество часов разницы между двумя датами в PHP? Мне нужно получить целое число, так как я хочу знать, больше или меньше определенного значения.

ответ

1
<?php 
$time1 = time(); 
$time2 = mktime(0,0,0,11,13,2012); // earlier today 
echo ($time1 - $time2)/3600; // 3600 seconds in hour 
?> 
4

Try:

$date1 = "2012-11-05 12:35:00"; 
$date2 = "2012-11-07 14:35:00"; 
$diff = strtotime($date2) - strtotime($date1); 
$diff_in_hrs = $diff/3600; 
print_r($diff_in_hrs); 

Manual

Demo

2

Если у вас есть PHP уточненный

$dateOne = new DateTime('2012-01-20 00:00:00'); 
$dateTwo = new DateTime('2012-01-21 02:00:00'); 

// В процедурном $ interval = date_diff ($ dateOne, $ dateTwo);

// Alternatively OOP style if supported 
$interval = $dateOne->diff($dateTwo); 

См: http://www.php.net/manual/en/class.dateinterval.php

+1

Вы получите 'неопределенную функцию date_diff' или' неизвестный метод diff', если он не в курсе. Или просто проверьте 'php -v' /' phpinfo() ' –

+0

, вы получите Неустранимая ошибка, если вы не задали часовой пояс по умолчанию (' date_default_timezone_set() ') –

+0

Вы установили это в свой php.ini' date.timezone = «Европа/Лондон» или 'date_default_timezone_set()' функция http://php.net/manual/en/function.date-default-timezone-set.php –

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