PHP: разность между двумя датами

  • Автор темы Guest
  • Дата начала
Статус
Закрыто для дальнейших ответов.
G

Guest

#1
Даты находятся в формате date("Y-m-j H:i:s");

$data - теперешняя дата
$data_f_on - другая дата (которая меньше теперешней)
Надо найти разницу между $data и $data_f_on
Код:
$razd_data = ": -"; 
$dat_f= strtok($data, $razd_data); 
$data_l_1=""; 
while ($dat_f){ 
$data_l_1="$data_l_1"."$dat_f"; 
$dat_f = strtok($razd_data); 
} 

$dat_f= strtok($data_f_on, $razd_data); 
$data_l_2=""; 
while ($dat_f){ 
$data_l_2="$data_l_2"."$dat_f"; 
$dat_f= strtok($razd_data); 
} 
$data_r_l=$data_l_1-$data_l_2; 


print "$data_l_1-$data_l_2=$data_r_l";
На выходе получается такое:

2004027144524-20040207141858=-18036179997334

Пробовал копированием делать "проверку" на Калькуляторе Виндовса... Такой же поганый результат..
Но вот когда я в том же калькуляторе НАБИРАЮ эту разницу - результат нормальный...

В чём трабла? И есть ли возможность решить её каким-нить другим методом?
 

admin

Well-known member
08.08.2003
2 754
0
#2
Анципорович П.П.
Так ведь у тебя эти два числа разной размерности -
так чтодля месяцев, дней, часов, минут, секунд делай подобную проверку для каждого

if ($day < 10) { $day = "0" . $day; }

тогда должно работать
 
Статус
Закрыто для дальнейших ответов.