63.2. Práce s daty a časem

Odkazy:

Funkce pracující s datem a časem:

($sec,$min,$hour, $mday,$mon,$year, $wday,$yday,$isdst) = localtime(time);
$wday = (localtime(time))[6];
$day_of_week = ('neděle', 'pondělí', 'úterí', 'středa', 'čtvrtek', 'pátek', 'sobota')[$wday];
print "Dnes je $day_of_week.\n";

Tabulka 63.1.

  rozsah hodnot
$secsekundy0-60
$minminuty0-59
$hourhodiny0-23
$mdayden v měsíci1 - 31
$monměsíc v roce0-11, 0=leden, 1=únor, …, 11=prosinec
$yearrok od 1900 
$wdayden v týdnu0-6, 0=neděle, 1=pondělí, …, 6=sobota
$ydayden v roce1-366
$isdstDayilight Saving Time0 = není letní čas, 1 = letní čas

Příklad 63.1. Jednořádkové ukázky

$ perl -e 'print time'
1212660430

Příklad 63.2. .

#!/usr/bin/perl
@timeData = localtime(time);
print join((' ', @timeData);

Příklad 63.3. noname

#!/usr/bin/perl
@months = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec);
@weekDays = qw(Sun Mon Tue Wed Thu Fri Sat Sun);
($second, $minute, $hour, $dayOfMonth, $month, $yearOffset, $dayOfWeek, $dayOfYear, $daylightSavings) = localtime();
$year = 1900 + $yearOffset;
$theTime = "$hour:$minute:$second, $weekDays[$dayOfWeek] $months[$month] $dayOfMonth, $year";
print $theTime;

Příklad 63.4. time.pl

#!/usr/bin/perl
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time);
printf "%4d-%02d-%02d %02d:%02d:%02d\n",$year+1900,$mon+1,$mday,$hour,$min,$sec;