오늘의 날짜가 1일인데 어제날짜를 구해야하는 프로그램을 짜야할떄..

어제가 30일인지 31일인지.. 또는 2월이 윤달인지 아닌지 참 헷갈리고 수동으로짜야하면 노가다임..ㅠㅠ

그럴때~! 응용하면 되는 프로그램!! ㅎㅎ


use Time::Local;


sub get_yesterday($$$)

{

    my ($y, $m, $d) = @_; #년도, 월, 일을 입력받는다.(날짜지정해서쓸때만 인자받음)

    my ($sec, $min, $hour, $mday, $mon, $year) = (0,0,0,$d,$m-1,$y-1900); #날짜지정해서 쓸때

    #my ($sec, $min, $hour, $mday, $mon, $year) = localtime();  #그냥 현재날짜만 쓸때

    my $yesterday_midday=timelocal(0,0,0,$mday,$mon,$year) - 60*60*24;

    ($sec, $min, $hour, $mday, $mon, $year) = localtime($yesterday_midday);

    my $YesterdaysDate = sprintf("%4d%02d%02d", $year+1900, $mon+1, $mday);

    return $YesterdaysDate; 

}


리턴값 :  20120201 (오늘날짜가 2월2일이라면..)

+ Recent posts