月の日数を調べる

誰かが作った関数を発見。
親切な方もいるものだ。
これでかなり仕事が楽になります〜!
ありがとう、神よ♪

使い方
my @nen = DaysOfMonth(2005,1);



sub DaysOfMonth {

# my変数の宣言
my($check_year, $check_mon);

# 引数のチェックと変数の作成
if ( $_[0] && ($_[0] =~ /^[0-9]+$/) && $_[1] && ($_[1] =~ /^[0-9]+$/) && $_[1]<=12 && $_[1]>=1 ) {
$check_year = $_[0];
$check_mon = $_[1];
}
else {
return 0;
}

if ( $check_mon == 1 ) { return 31; }
elsif ( $check_mon == 2 ) {
if ( $check_year%400 == 0 ) { return 29; }
elsif ( $check_year%100 == 0 ) { return 28; }
elsif ( $check_year%4 == 0 ) { return 29; }
else { return 28; }
}
elsif ( $check_mon == 3 ) { return 31; }
elsif ( $check_mon == 4 ) { return 30; }
elsif ( $check_mon == 5 ) { return 31; }
elsif ( $check_mon == 6 ) { return 30; }
elsif ( $check_mon == 7 ) { return 31; }
elsif ( $check_mon == 8 ) { return 31; }
elsif ( $check_mon == 9 ) { return 30; }
elsif ( $check_mon == 10 ) { return 31; }
elsif ( $check_mon == 11 ) { return 30; }
elsif ( $check_mon == 12 ) { return 31; }

# エラー時の結果出力
return 0;
}