Date-Holidays-CN
    
    
  
  
  
view release on metacpan or search on metacpan
lib/Date/Holidays/CN.pm view on Meta::CPAN
use base 'Exporter';
use vars qw/$VERSION @EXPORT @EXPORT_OK/;
$VERSION = '0.01';
@EXPORT = qw(is_cn_holiday cn_holidays);
@EXPORT_OK = qw(is_cn_solar_holiday is_cn_lunar_holiday);
use DateTime;
use DateTime::Calendar::Chinese;
use Time::Local;
# The Gregorian calendar/solar calendar
my $SOLAR = {
	'0101' => 'å
æ¦',
	'0214' => 'æ
人è',
	'0308' => 'å¦å¥³è',
	'0312' => 'æ¤æ è',
	'0401' => 'æäººè',
	'0405' => 'æ¸
æè',
	'0501' => 'å³å¨è',
	'0504' => 'éå¹´è',
	'0601' => 'å³å¨è',
	'0701' => '建å
æ¥',
	'0801' => '建åè',
	'0910' => 'æå¸è',
	'1001' => 'å½åºè',
	'1225' => 'å£è¯è',
};	
# The Chinese calendar/lunar calendar
my $LUNAR = {
	'0101' => 'æ¥è',
	'0115' => 'å
宵è',
	'0505' => '端åè',
	'0707' => 'ä¸å¤æ
人è',
	'0815' => 'ä¸ç§è',
	'0909' => 'éé³è',
	'1208' => 'è
å
«è',
	'1222' => 'å¬è³è',
	'1230' => 'é¤å¤',
lib/Date/Holidays/CN.pm view on Meta::CPAN
}
sub is_cn_holiday {
	is_cn_solar_holiday(@_) || is_cn_lunar_holiday(@_);
}
sub cn_holidays {
	my ($year) = @_;
	defined $year  || return undef;
	# only provide solar calendar for now
	return $SOLAR;
}
1;
__END__
=encoding utf8
=head1 NAME
Date::Holidays::CN - Determine Chinese public holidays
lib/Date/Holidays/CN.pm view on Meta::CPAN
	my $is_holiday = is_cn_lunar_holiday( 2005, 9, 18 ); # $day = 'ä¸ç§è'
=head1 EXPORT
=head2 is_cn_holiday( $year, $month, $day )
determine whether that day is a Chinese holiday
=head2 cn_holidays($year)
BE CAREFUL! It only provide solar calendar for now! And it's not suggested!
=head1 EXPORT_OK
SUGGESTED! quicker and more elegant!
=head2 is_cn_solar_holiday( $year, $month, $day )
determine whether that day is a Chinese holiday by the Gregorian calendar/solar calendar
=head2 is_cn_lunar_holiday( $year, $month, $day )
determine whether that day is a Chinese holiday by the Chinese calendar/lunar calendar
=head1 RETURN VALUE
if it is a holiday, return the Chinese holiday name(utf8), otherwise return undef.
=head1 AUTHOR
Fayland Lam, C<< <fayland at gmail.com> >>
=head1 COPYRIGHT & LICENSE
( run in 0.586 second using v1.01-cache-2.11-cpan-5dc5da66d9d )