|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Konstantin Tokar 2:5020/400 11 Jul 2004 13:29:39 To : Sergey Orlov Subject : Re: Глючок со временем --------------------------------------------------------------------------------
Sergey Orlov wrote:
> Hello All!
> Использую ActiveState 5.8.3.805, и встретился со следующим багом
>
> use Time:Local;
>
> $sutki=24*60*60;
>
> А здесь цикл ---
>
> ($m_day,$m_month,$m_year)=(localtime($in1))[3,4,5];
>
> $in1=timelocal(0,0,0,$m_day,$m_month,$m_year);
>
> $in1=$in1+$sutki;
>
> Так вот все отрабатывается нормально, пока не доходит до, в зависимости от
> года , 27-30 ноября, после чего сутки не плюсуются.
> Может кто-нибудь подскажет как это обойти или другой способ увеличения даты
> на один день...
>
> Sergey.
Можно попробовать все расчёты делать в GMT, а потом переводить в localtime
use Time::Local;
print scalar(localtime(timegm(0,0,0,28,9,2004) + 60*60*24)), "\n";
print scalar(localtime(timegm(0,0,0,29,9,2004) + 60*60*24)), "\n";
print scalar(localtime(timegm(0,0,0,30,9,2004) + 60*60*24)), "\n";
--- ifmail v.2.15dev5.3
* Origin: Demos online service (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/6577a57dc2a7.html, оценка из 5, голосов 10
|