收录日期:2018/09/20 15:52:41 时间:2016/05/23 01:58:18 标签:CGI
今天兄弟我第一次写cgi,头头催着要cgi输出当前日期的sample,那位能够帮帮忙

日期格式要求:2003/01/05 07:06:08
忘记说了我这里的环境是iis+perl
sub system_time {
my ($sec, $min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime();
$mon++;
$year=$year+1900;
my $systime="$year.$mon.$mday.$hour.$min.$sec";
                  return $systime;
}
sub system_time {
my ($sec, $min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime();
$mon++;
$year=$year+1900;
my $systime="$year/$mon/$mday/  $hour  $min  $sec";
                  return $systime;
}
我试着写了一页代码如下:

print "Content-type:text/html\n\n"; 

use Time::localtime;

sub system_time {
my ($sec, $min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime();
$mon++;
$year=$year+1900;
my $systime="$year/$mon/$mday/  $hour  $min  $sec";
                  return $systime;
}

print system_time();

exit;

-----------------------------------------------------------------------------
结果如下:
1900/1//      Time::tm=ARRAY(0x18a2520)
localtime() 只是一个转换函数,还要取的当前的时间才行。
当前的时间是 time .

把里面的 localtime() 换成 localtime(time)
#!/usr/bin/perl
($sec, $min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)  = localtime(time);
print "秒: $sec\n";
print "分: $min\n";
print "時: $hour\n";
print "一個月的第幾天: $mday\n";
print "月: $mon 範圍是 0-11,而一月為 0\n";
print "距離 1900 年的第幾年: $year\n";
print "一周內的第幾天: $wday  範圍是 0-6,而星期日為 0\n";
print "一年內的第幾天: $yday\n";

# 如果我只想要當天的日期,
($_,$_,$_, $mday, $mon, $year, $_,$_,$_) = localtime(time);
$year = $year + 1900;
$mon = $mon + 1;
print "今天是西元 $year 年 $mon 月 $mday 日\n";