ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Есть ли переменные даты?



По моему использование модулей для такой задачи это перебор. Скоро для
вывода строчки вместо print будут использовать какой-нибудь
IO::Sys::Print->out()

1. локальное время при помощи localtime (perldoc -f localtime)
sub { my @x = localtime; return sprintf "%04u-%02u-%02u
 %02u:%02u:%02u", $x[5]+1900, $x[4]+1, $x[3], $x[2],$x[1],$x[0] }

2. время по GMT при помощи gmtime (perldoc -f gmtime)
sub { my @x = gmtime; return sprintf "%04u-%02u-%02u %02u:%02u:%02u",
$x[5]+1900, $x[4]+1, $x[3], $x[2],$x[1],$x[0] }

3. Если очень хочется объекты, то можно и Time::localtime, но так
(чтобы избежать смены дат):
sub { use Time::localtime; my $t = localtime; return sprintf
"%04u-%02u-%02u", $t->year+1900,$t->mon+1,$t->mday }

4. Использование DateTime оправдано будет только в том случае, если
будет интенсивная работа с таймзонами или с калькуляцией дат

2010/2/10 Andrey Zloy <andrey.zloy@xxxxxxxxx>:
> Эт верно, может ) Тогда
>
> $dt = DateTime->now;
> $year   = $dt->year;
> $month  = $dt->month;
>
> http://search.cpan.org/~drolsky/DateTime-0.53/lib/DateTime.pm
>
> 10 февраля 2010 г. 13:19 пользователь Sergey Averyanov
> <averyanov@xxxxxxxxx> написал:
>> BTW так нельзя делать.
>> Между вызовом
>> $r->variable("month", localtime->mon);
>> и
>> return(localtime->mday)}';
>> может попасть смена даты.
>> В итоге вместо 31 января получится 1 января.

-- 
Best wishes,
Vladimir V. Perepelitsa aka Mons <inthrax@xxxxxxxxx>
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.