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 2.481 seconds using v1.01-cache-2.11-cpan-140bd7fdf52 )