Cha*_*ens 30
对您或计算机最有效?
为了你:
use POSIX qw/strftime/;
print strftime("%Y-%m-%d", localtime), "\n";
Run Code Online (Sandbox Code Playgroud)
对于电脑:
my @t = localtime;
$t[5] += 1900;
$t[4]++;
printf "%04d-%02d-%02d", @t[5,4,3];
Run Code Online (Sandbox Code Playgroud)
小智 14
或者您可以使用DateTime模块,这些模块现在似乎是事实上的标准日期处理模块.需要从CPAN安装它.
use DateTime;
my $now = DateTime->now->ymd;
Run Code Online (Sandbox Code Playgroud)
zig*_*don 10
Date::
命名空间中有许多模块,其中许多模块可以帮助您完成所需的操作.或者,你可以自己动手:
my ($day, $mon, $year) = (localtime)[3..5];
printf "%04d-%02d-%02d\n", 1900+$year, 1+$mon, $day;
Run Code Online (Sandbox Code Playgroud)
资源
您可以使用Time :: Piece模块(与Perl 5.10及更高版本捆绑,或者您可以从CPAN下载),如下所示:
use strict;
use warnings;
use Time::Piece;
my $today = localtime->ymd(); # Local time zone
my $todayUtc = gmtime->ymd(); # UTC
Run Code Online (Sandbox Code Playgroud)
这不会创建任何临时变量:
printf "%d-%02d-%02d", map { $$_[5]+1900, $$_[4]+1, $$_[3] } [localtime];
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
19207 次 |
最近记录: |