曜日の取得


 Zellarの公式を使って取得します。
print getwday(2003, 8, 18);

# Zellarの公式で曜日を求める
# 0:日 ... 6:土
sub getwday {
	my $year = shift;	# 年
	my $mon = shift;	# 月
	my $day = shift;	# 日
	
	if ($mon == 1 or $mon == 2) {
		$year--;
		$mon += 12;
	}
	return ($year + int($year / 4) - int($year/100) + int($year / 400)
		+ int((13 * $mon + 8) / 5) + $day) % 7;
}
 Date::Simpleを使って取得することもできます。
my $date = Date::Simple->new(2006, 1, 1);
#print $date->day_of_week, "\n"; # Date::Simpleの1.03では使えない
print $date->format('%w'), "\n";

関連項目

なし