strtotime () не может обработать 29.02? - PullRequest
0 голосов
/ 29 февраля 2012

Я рассчитываю количество дней между двумя датами, например:

                    $start = strtotime($_SESSION['sdate']); 
                    $end = strtotime($_SESSION['hdate']); 
                    echo ($end - $start); 
                    $duration = ($end - $start) / 3600 /24; 
                    $duration+=1; //plus one day 
                    echo " The ad will show for ".$duration." day(s)<br/>"; 

Что обычно работает нормально, но, кажется, что все портится, когда у меня начальная дата 2012-02-29 и hdate2012-04-01.Я получаю продолжительность: 32,9583333333 Почему это?Это портит мои расчеты.Есть лучший способ сделать это?Спасибо!Рон

Ответы [ 2 ]

3 голосов
/ 29 февраля 2012

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

0 голосов
/ 29 февраля 2012

Часовой пояс вашего сервера не обновляется. Вот почему это создает проблему.

...