Почему скрипт выдает ошибку:
Can\'t call method "mday" on an undefined value at XX.pl line XX
#!/usr/bin/perl
use Time::localtime;
$y=2001;
$m=11;
@monlens = (0,31,28,31,30,31,30,31,31,30,31,30,31);
$secy=((($y-1900)*365)-int($y/4))*24*60*60;
$secm=0;
for ($i=1; $i<=$m; $i++) { $secm=$secm+$monlens[$i]; };
if ($y%4 != 0) {$secm--;};
$secm=$secm*24*60*60;
$secd=$monlens[$m]*24*60*60;
$first=$secy+$secm;
$tm=localtime($first);
$dd=$tm->mday; $mm=$tm->mon+1; $yy=$tm->year+1900;
$hh=$tm->hour; $min=$tm->min;
if ($hh<10) {$hh="0$hh";};
if ($min<10) {$min="0$min";};
if ($mm<10) {$mm="0$mm";};
if ($dd<10) {$dd="0$dd";};
$fs="$hh:$min ($dd.$mm.$yy)";
$second=$secy+$secm+$secd;
$tm=localtime($second);
$dd=$tm->mday; $mm=$tm->mon+1; $yy=$tm->year+1900;
$hh=$tm->hour; $min=$tm->min;
if ($hh<10) {$hh="0$hh";};
if ($min<10) {$min="0$min";};
if ($mm<10) {$mm="0$mm";};
if ($dd<10) {$dd="0$dd";};
$ss="$hh:$min ($dd.$mm.$yy)";
print "Секунды года: $secy\\n";
print "Секунды месяца: $secm\\n";
print "Начало месяца: $first, Конец месяца: $second\\n";
print "Начало месяца: $fs, Конец месяца: $ss\\n";