-
-
03 Jan 2009 05:53:32 UTC
- Distribution: Date-Korean
- Module version: v0.0.2
- Source (raw)
- Browse (raw)
- Changes
- How to Contribute
- Issues
- Testers (2629 / 0 / 14)
- Kwalitee
Bus factor: 0- License: perl_5
- Activity
24 month- Tools
- Download (30.88KB)
- MetaCPAN Explorer
- Permissions
- Subscribe to distribution
- Permalinks
- This version
- Latest version
and 1 contributors-
C.H. Kang
- Dependencies
- Date::ISO8601
- DateTime
- DateTime::Calendar::Julian
- Test::More
- version
- and possibly others
- Reverse dependencies
- CPAN Testers List
- Dependency graph
NAME
Date::Korean - Conversion between Korean solar / lunisolar date.
SYNOPSIS
use Date::Korean; # convert solar to lunisolar date my ($ly, $lm, $ld, $leap) = sol2lun(2008, 10, 10); # convert lunisolar to solar date my ($sy, $sm, $sd) = lun2sol(2008, 9, 12, 0); # get ganzi in chinese my ($saecha, $wolgun, $iljin) = get_ganzi(2008, 9, 12, 0); # get ganzi in korean my ($saecha, $wolgun, $iljin) = get_ganzi_ko(2008, 9, 12, 0);
DESCRIPTION
The traditional korean lunisolar calendar is based on the chinese calendar. This module handles conversion between Korean solar and lunisolar date.
FUNCTIONS
- sol2lun
-
my ($ly, $lm, $ld, $leap) = sol2lun(2008, 10, 10);
Convert solar to lunisolar date. This function takes solar year, month, day arguements and returns lunisolar year, month, day and leap flag( 1 if month is leap month, or 0 if not )
- lun2sol
-
my ($sy, $sm, $sd) = lun2sol(2008, 9, 12, 0);
Convert lunisolar to solar date. This function takes lunisolar year, month, day, leap flag and returns solar year, month, day.
- get_ganzi
-
my ($saecha, $wolgun, $iljin) = get_ganzi(2008, 9, 12, 0); binmode STDOUT, ':encoding(UTF-8)'; print "$saecha $wolgun $iljin\n";
output
戊子 壬戌 癸未
Get ganzi (sexagenary cycle - 干支) of year(歲次), month(月建), day(日辰) in chinese. This function takes lunisolar year, month, day, leap flag.
- get_ganzi_ko
-
my ($saecha, $wolgun, $iljin) = get_ganzi_ko(2008, 9, 12, 0); binmode STDOUT, ':encoding(UTF-8)'; print "$saecha $wolgun $iljin\n";
output
무자 임술 계미
Get ganzi (sexagenary cycle - 간지) of year(세차), month(월건), day(일진) in korean. This function takes lunisolar year, month, day, leap flag.
CAVEATS
Conversion between solar and lunisolar date is very difficult because it based on complicated astronomical calculation. Parameters of the conversion equation are sometimes not constant and should be obtained from astronomical observation. So I used precalculated conversion table because the calculation result does not fully gurantee the accuracy of it.
Conversion table was striped and generated from solar <-> lunisolar conversion service on Korea Astronomy & Space Science Institute ( http://www.kao.re.kr/ ). Currently supported date range is from solar 1391-02-05 ( lunisolar 1391-01-01 ) to 2050-12-31 ( lunisolar 2050-11-18 ).
AUTHOR
C.H. Kang <chahkang_AT_gmail.com>
COPYRIGHT AND LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
SEE ALSO
Module Install Instructions
To install Date::Korean, copy and paste the appropriate command in to your terminal.
cpanm Date::Korean
perl -MCPAN -e shell install Date::Korean
For more information on module installation, please visit the detailed CPAN module installation guide.