La funzione localtime restituisce il giorno dell'anno. Senza alcun
argomento, localtime utilizza l'orario attuale.
$giorno_dell_anno = (localtime)[7];
Il modulo POSIX può anche dare un formato ad una data usando il giorno
dell'anno o la settimana dell'anno.
use POSIX qw/strftime/;
my $giorno_dell_anno = strftime "%j", localtime;
my $settimana_dell_anno = strftime "%W", localtime;
Per ottenere il giorni dell'anno per qualsiasi data, utilizzate il modulo Time::Local per
convertire un orario in secondi dall'epoch [data di riferimento; nella cultura Unix il
1/1/1970 00:00:00, NdT] da passare a localtime.
use POSIX qw/strftime/;
use Time::Local;
my $settimana_dell_anno = strftime "%W",
localtime( timelocal( 0, 0, 0, 18, 11, 1987 ) );
Il modulo Date::Calc fornisce due funzioni per calcolare questi valori.
use Date::Calc;
my $giorno_dell_anno = Day_of_Year( 1987, 12, 18 );
my $settimana_dell_anno = Week_of_Year( 1987, 12, 18 );
|