diff --git "a/doc/24\354\240\210\352\270\260 \352\263\204\354\202\260\353\260\251\353\262\225.txt" "b/doc/24\354\240\210\352\270\260 \352\263\204\354\202\260\353\260\251\353\262\225.txt"
deleted file mode 100644
index ffdc92c..0000000
--- "a/doc/24\354\240\210\352\270\260 \352\263\204\354\202\260\353\260\251\353\262\225.txt"
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
- 고영창 (fftkrr )
-24절기의 계산방법.. 1998-11-29 16:03 63 line
-
-24절기의 계산방법
-
-이 절기의 계산법은 원래는 태양황경을 계산해서 구해야 하지만
-황경은 아예무시해버리고 독창적인 방법을 사용했습니다.
-
-절기는 1태양년에 정확히 일치하는것이니까,
-1태양년의 길이를 525949분(=365일 5시간 49분)으로 맞추고 제 프로그램의
-유효기간 전부에서 일정하게 사용했습니다.
-(당연히 曆表時는 고려가 안되었죠. 그러니 실제 1태양년보다 약 15초정도 깁니다)
-이 오차에 대한 내용은 맨 아래에서 다시 언급하죠.
-
-그런후에 최근 10여년간 역서에 나온 절기시간을 분석해서 평균을 내었습니다.
-입춘시점을 한해의 시작점으로 하여 0으로 잡고,각절기까지의 평균을 구했더니
-다음과 같더군요..(24절기모두 표준편차 5분이내입니다)
-
- ('입춘','우수','경칩','춘분','청명','곡우','입하','소만',
- '망종','하지','소서','대서','입추','처서','백로','추분',
- '한로','상강','입동','소설','대설','동지','소한','대한','입춘');
- =
- (0,21355,42843,64498,86335,108366,130578,152958,
- 175471,198077,220728,243370,265955,288432,310767,332928,
- 354903,376685,398290,419736,441060,462295,483493,504693,525949);
-
-이 값들을 이용해서 1996년입춘부터 구하려는 특정년까지의 년수에
-525949(=1년)을 곱해서 1996년입춘부터 해당년의 입춘까지의 시간(분)을 구한뒤에
-그 분을 1440분(=1일)으로 나누어서 일수를 구하고, 이렇게 해서 해당년의 입춘의
-날짜를 구합니다.
-
-그다음 그해의 입춘을 기점으로 위 절기까지의 분에 따라 그 해의 각각의 절기를
-구합니다.
-
-무지 쉽죠?
-
-대략의 알고리즘은 이와 같고, 이 알고리즘을 구현해서 프로그래밍을 하였구요.
-프로그래밍은 별로 어렵지 않았습니다.
-
-
-
-오차에 대해서 잠깐 언급하면요.
-
-사마천의 '사기'에 있는 역서관련부분에보면
-BC104년의 동지입기시간이 자시였다는 기록이 나옵니다.
-이 BC104(혹은 BC103년)은 중국과 한국의 역법에서 아주 중요한 위치를 가집니다.
-그 이유는 그 해의 동지가 甲子일이었고, 동지 입기시간이 甲子시였기 때문이죠.
-또 이 동지입기시간이 달의 합삭시간과 일치했다고 합니다.
-그러니 당연히 중국과 한국에서 사용되었던 모든 역법의 기준점이 됩니다.
-이와 관련된 내용은 나중에 기회가 있을때 다시 언급하죠.
-
-제가 1년을 15초 길게 계산해서 구한 BC104년의 동지 입기시간이 정확하게
-자정이었습니다. 이 얘기는 BC104년부터 1996년까지의 1년의 평균길이가
-525949분이라는 얘기죠. 그러니 역표시가 맞다면 지금은 1년의 길이가
-525949분에서 15초가량 짧지만 BC104년 무렵에는 525949분에서 15초가량 길었다는
-얘기구요, 역표시가 틀리다면 1년의 길이는 그냥 525949분이라는 이야기입니다.
-만약 역표시가 틀리다면.. 저는 노벨상감이죠.. 헤헤..
-
-이렇게 해서 계산에 의한값과 기록이 일치하니 대충 맞는가보다 생각중이죠.
-
-이게 제가 절기 계산을 한 방법입니다.
-
-진짜만세력은 델파이로 만들었는데, 소스라인이 약 1600라인정도입니다.
-
-이상입니다.
-
-
- PRINTER/CAPTURE를 OFF 하시고 [ENTER] 를 누르십시오.
diff --git a/doc/cal20000.txt b/doc/cal20000.txt
deleted file mode 100644
index 52f3bd4..0000000
--- a/doc/cal20000.txt
+++ /dev/null
@@ -1,209 +0,0 @@
-¥ V0.93ȳ
-
-http://afnmp3.homeip.net/~kohyc/calendar/index.cgi
-http://afnmp3.homeip.net:81/~kohyc/calendar/index.cgi
-
-*****
-
- ð ջð ϰ Ͽ Դϴ.
-ȿⰣ -10000 10000 ⰣԴϴ.
-ǥù ±, Ѵ ǥϸ, ȿⰣ
-¸ ,³¥,ϽĿ,24Ⱑ ǥմϴ.
-, ش糯ڸ 콺 Ŭϸ ׳ ,,28,,¿
-,/, شϿ , ߱, ̷ Աð
- ջð,ð Ȳ鱳 ش ¾ Ȳ̰ ǥõ˴ϴ.
-
-Ʒ ȿⰣ (-10000~10000) Ǵ
-Դϴ.
-
- α Ʈ Ӱ ֽϴ.
-
-
-***** ȳ
-
-0.91 : ʹ
-
-
-0.92 : 24ð , Ͻ߰, óӵ
-
- - 24Աð ִ 2ð ִ 20 .
- - Ͻİ ߰.
- - 0.91 (1996)κ ־ ӵ
- ӵ ȹ .
-
-
-0.93 : ȿⰣ ( ) ߰
-
- - ȿⰣ -2085 6077 -10000 10000 Ȯ
- Ȯ 64Ʈ ؼ ϴ.
- -10000 Ž ð մϴ.
- , 10000 ̷ ð Ŀ
- ϴ.
- - (º)ð ߰Ǿϴ.
- ̿ Բ ش Ŀε ߰Ǿϴ.
- ջð ð Ҽ 2ڸ Ǽ Ȳ鱳 ش
- ¾ Ȳ ̷ -90~+90 Դϴ.
-
-
-
-***** ݵ ˾ƾ *****
-
-- Ʒ ϰ » ϰ ٸ
-ֽϴ. ¥ ¥ 꿡 Ͽ մϴ.
-/ ٸ ִٴ° ϰ Ͻñ ٶϴ.
- ٸ ¥ ߿ Ư Ϸ翡 ̿ ̿
-Ͽ ݵ ˰ Ͻʽÿ.
-
-- (BC)꿡 0 ؼ Ͽ մϴ.
- BC 0 , BC 1 ش AD 1Դϴ.
- ¥ бü踦 ؼ AD1 ٷ 0Դϴ.
-0 -1Դϴ. BC Ѵٸ
-ش 1 ؾ մϴ. BC 5 Ѵٸ
- Էºκп -4 Էؾ մϴ.
-
-- ¥ ǥ Դϴ. (1583)
- ¥ǥ 콺 ȯϰų, 콺
- ȯϷ ǥ ־ մϴ.
-
-
-A.D 4 3 -2 900 3 5
- 100 3 -1 1000 3 6
- 200 3 0 1100 3 7
- 300 3 1 1300 3 8
- 500 3 2 1400 3 9
- 600 3 3 1500 3 10
- 700 3 4 1583 3
-( ǥ м 37 ǥԴϴ.)
-
- A.D. 4 콺 θȲ鶧 ¥ Դϴ.
- A.D. 4 콺 A.D. 4 콺° ȣȯ
-ʽϴ. A.D.4 ¥ A.D.4 콺°
-ȣȯǴ ü ǥմϴ. Ƿ A.D.4 ¥꿡 A.D 4 -2Ͽ
-100 Ϸ羿 ߰ؼ ָ ˴ϴ.
-
-
-* Ϸ
-
- Ŵ Ϸ ջðԴϴ. ջð 0 ֺ
- Ϸ簡 ϰ ٸ ֽϴ.
- ̷ Ϸ ð ġ Ͽ
- Ͽ ϰ Ϸ縦 Ͽ մϴ.
- ̹ ð, ̹ Ǿ
- ȱ ߸Ǿٰ Ҽ ϴ.
- в ջð 0 ֺ ϰ
- ¥ ٸ ִٴ° ݵ ˰ Ͻñ ٶϴ.
- ( ¥ ְ, Ʋ ֽϴ.
- ڼ Ͻʽÿ..)
- Ϸ ¥ Ʋ ڰ Ϸ羿 иϴ.
- ̳ ¥ Դϴ.
-
-*
-
- Ϸ 24 ߱ Ͽ ˴ϴ.
- Ϸ ¥ ߱ ¥ ġ ̵ɼ
- ֽϴ.
- ̷ ٽ Ͽ ؾ
- մϴ. ̹ ǾǷ Ҽ ϴ.
- ¥» ǥõȴٸ, °ų
- ( ϰų), 3 ̳ մϴ.
- ڷῡ ǥõ ¥ » Ÿ ش ڷᰡ
- ߸ ڷų ¥ ߸ ƴմϴ. μ յڸ
- ˻غ ã ֽϴ. ̶ Ǵ° Դϴ.
- Բ Ͻñ ٶϴ.
-
- Ϸ糪 /,/ ̵ɼ ֽϴ.
-
- ¥¿ 24Ա (¥ ð) ջ
- Ȯϱ ¥ Ȯ, ϻ
- 2~3 ų ֽϴ.
-
-
-*****
-
-¥ ¾ ܰ (1996 2 4 22
-8) ̸, 1 ȸͳ ̴ ȿⰣ 365.2423611(=365 5ð
-49=525949) ϸ, 1995 12 31 ġ
-Ͽϴ.
-1ȸͳ ̴ 15ʰ Ůϴ. ̿ õ
-Ȩ Խ ϰų ڿ Ͻʽÿ.
-
-*****
-
-¾ 3300 Ϸ ,
- ¥ ϴ.(Ʒ Ÿ )
-
- ڼϰ ǥϸ, ϴ.
-
-24 - ִ 20̳, 10-ǥ 5
-ջ - ִ 40 ̳, 20-ǥ 10
-( ġ ġ ũ ٸ ʽϴ. Ư ս
- Ѵٸ ٰ մϴ.)
-
-ջð̳ ߱ð 0ø 23 59϶ 01϶ ¥
- ˴ϴ. ̷ ¥ Ϸ糪 и
- մϴ.
-
-
-***** Ÿ
-
- - ( 2~3) αٿ 2 ߱⸦ ؼ
- ¿ ġ ո ˴ϴ.
-
- - α µ 꿡 δ м(,
- 1985 ) õ (1988,1990,1992,1993,1996,1997,1998)
- ̸, Ȯ ϱ(, 1982 ձȸ
- ),ﱹ(ν),(縶õ),() ȮϿϴ.
-
- - 1¾ (24 ) Ͽ,
- ջð ǥ ¾ǥ( м 286)
- Ͽϴ.
-
- - '' 'ﱹ' Ͻı ȮϿϴ.
- Ȯΰ Ͻ ߰, ¥» Ÿ
- е ȮϽ ֽϴ.
- Ͽ ¥ ȸ Ѵٸ ȮҼ
- , Ͻ ȮҼ ֽϴ.
-
- - α̳ http://user.chollian.net/~kohyc/calendar
- ϰų ڿ kohyc@chollian.net Ͻñ ٶϴ.
- ϰ ڷ Ȩ Ǽ ֽϴ.
- ֱٹ Ȩ Ҽ ֽϴ.
-
- - α ִٸ ڿ ˷ֽø ϰڽϴ.
-
-
-***** ǥ
- -
- մϴ. ( -10000~10000) (1~12)
- Է½Ű ش ǥõ˴ϴ. Է½Ű
- Դϴ.
-
- - ǥó
- ȭ ĭ ū ڴ » ¥Դϴ.
- Ʒ ڿ ,24Ⱑ ǥõ˴ϴ.
- ǥô ¾ǥ̸ ⺻ ǥԴϴ.
- Ϸ Բ 'Ͻ'Ȥ 'Ͻİ'̶ ǥð ǥɼ ִµ
- Ͻ̶ ǥõ ¥ ݵ Ͻ ֽϴ. Ͻİ̶ ǥõ
- ¥ Ͻ Ͼ ɼ ũٴ ǥԴϴ.
- Ͻİ ջð ϸ ˼ ֽϴ.
- Ŀ '' Ȥ 'İ'̶ ǥð ǥ˴ϴ. ̶ ǥõ
- ¥ ݵ ְ, 'İ'̶ ǥõ ¥ Ͼ
- ɼ ũٴ ǥԴϴ.
-
- ¥ĭ߿ ںκ ƴ ش ֺ ˼ ֽϴ.
- ߿ ǥõǴ ڴ 28 ϸϿ Դϴ.
- ջð Ͻ Ȥ Ͻİ̶ Ÿ ջð Ͻ ִٴ
- ǥ̰, ð밡 ̶ 츮 ϽԴϴ.
- ð Ȥ İ̶ Ÿ ð ִٴ
- ǥ̰, ð밡 ̶ 츮 Դϴ.
-
- ջð ð Ҽ 2ڸ Ǽ ǥõǴµ, ڴ
- ش ¾ Ȳ Ȳ鱳 Դϴ.
- ڴ 360 ǥ -90 +90̸, ڿ
- ڼ ' м' 306 10-4 Ͻʽÿ.
-
- ȭ鿡 ǥõǴ ð 135(GMT+9ð) ðԴϴ.
-
-
- 1999 9 11 ܰ
- â
diff --git "a/doc/\355\225\250\354\202\255\352\263\274 \354\235\274\354\213\235 \352\263\204\354\202\260\353\260\251\353\262\225.txt" "b/doc/\355\225\250\354\202\255\352\263\274 \354\235\274\354\213\235 \352\263\204\354\202\260\353\260\251\353\262\225.txt"
deleted file mode 100644
index 0ef48f2..0000000
--- "a/doc/\355\225\250\354\202\255\352\263\274 \354\235\274\354\213\235 \352\263\204\354\202\260\353\260\251\353\262\225.txt"
+++ /dev/null
@@ -1,125 +0,0 @@
- 고영창 (fftkrr )
-합삭과 일식계산 방법.. 1998-11-29 15:58 131 line
-
-제가 사용한 합삭시점계산과 일식 계산 방법은 이렇습니다.
-
-일식 계산을 위해서는 합삭시점을 정확하게 구하고, 그 시점의 태양황경이
-교점황경과 차이가 얼마나 나는지를 구해서 그 차이가 일식범위내면 일식이
-있는것이고, 범위밖이면 일식이 없는것입니다.
-
-일식을 계산하기 위해서는 우선 태양의 진황경을 구합니다.
-진황경을 구하기 위해서 평균황경를 구하고, 그 평균황경과 근점이각을 구한후에
-근점이각에 따른 중심차(공전궤도가 원일때(평균경도)와 타원일때(진황경)의
-위치차이)를 구합니다. 여기서 사용한 식은요.. 1996년 역서에 나온식입니다.
-
- 평균황경 sl=278.956807+0.98564736*d
- 근점이각 sm=356.087309+0.98560028*d
-
- (d는 1996년 1월 0일로 부터 떨어진 날수)
-
-사실은 근지점경도를 먼저 구한후에 평균황경에서 근지점경도를 빼서 근점이각을
-구하는데 설명상 근지점경도는 생략했습니다.(프로그램에서는 근점경도먼저 구했음)
-
-이 평균황경과 근점이각을 이용해서 중심차를 구했는데, 이 중심차식은
-케플러 제2법칙을 이용해서 타원상의 한점을 시간에 의한 매개변수표현법에 의해서
-계산해서 구할수는 있지만 제가 게을러서 직접 계산하지 않고,
-역법의 원리분석 288페이지에서 훔쳐왔습니다.
-
- 중심차 sd=1.919*sin(sm)+0.020*sin(2*sm)
-
-그러면 태양의 진황경은
-
- 진황경 sreal=sl+sd
-
-가되구요..
-
-이 진황경을 시간으로 분단위까지 구할수 있습니다.
-(하루는 d에 1을 더하고, 한시간은 d에 0.04166666666, 1분은 d에 0.000694444을
-더하면 특점 시점(분단위)까지 구할수 있습니다. 물론 균시차는 계산이
-안된상황이구요)
-
-
-그다음에 달의 진황경을 구합니다.
-달의 진황경 역시 달의 평균황경을 구한후에 중심차를 더해서 진황경을
-구하는 방식을 사용했는데..
-달은 태양-지구의 영향을 받기 때문에 약간 복잡하죠...
-
-우선 달의 평균경도는 1996년을 기준으로
-
- 평균황경 ml=27.836584+13.17639648*d
-
-달 역시 타원궤도로 지구를 공전하기 때문에 근지점에 대한 근점이각을
-구해서 달의 위치를 계산합니다. 또 참고삼아 교점황경도 구합니다.
-이 식은 1996년 역서에서 가져왔구요..
-
- 달의 근점 황경 mn=280.425774+0.11140356*d
- 달의 평균근점이각 mm=ml-mn
- 달의 교점황경 mi=202.489407-0.05295377*d
-
-이렇게 구한후에 달의 근점이각과 태양의 근점이각, 교점황경을
-이용해서 달의 중심차를 구합니다.
-이 중심차는 3체운동(태양-지구-달)으로 구하는데 저는 어렴풋이 짐작만
-할뿐이고, 실제로 구하는 유도과정은 정확히는 모릅니다. 물론 책보면
-알수 있겠지만 게을러서 공부 안했씀..(죽어도 모른다는 말은 절대 못함 헤헤..)
-
-달의 중심차는 다음처럼 복잡하게 표현됩니다. 역법의 원리분석에서 가져온
-식입니다.
-
- 중심차 md=5.068889*sin(mm)+0.146111*sin(2*mm)+0.01*sin(3*mm)
- -0.238056*sin(sm)-0.087778*sin(mm+sm)+0.048889*sin(mm-sm)
- -0.129722*sin(2*mi)-0.011111*sin(2*mi-mm)-0.012778*sin(2*mi+mm)
-
-이제 이 중심차를 달의 평균황경에 더하면 달의 진황경이 나옵니다.
-
- 달의 진황경 mreal=ml+md
-
-이역시 태양진황경처럼 분단위까지 구하구요..
-
-이제 특점 시점을 지정하면(d의 값을 지정하면) 해와 달의 위치(황경)를 구할수
-있습니다.
-
-음력날짜를 구하기 위해서는 초하루 날짜를 구해야 하는데 초하루는 합삭시간이
-있는 날짜이고, 합삭시간은 달과 태양의 황경이 같은 시점입니다.
-
-원래는 달과 태양의 황경이 같은 시점을 구하기 위해서는 우선 날짜를 주고 그 날의
-0시의 달과 태양의 위치를 구한후에 이 달과 태양의 위치차이를 구하고,
-그 날의 태양의 황경 변화율과 달의 황경변화율을 구한후 이 변화율의 차이를
-구해서
-위치차이를 변화율의 차이로 나누면 0시에서부터 합삭시점까지의 시간이 나옵니다.
-
-그런데..이렇게 구하려면 간단한 미적분이 필요한데, 이렇게 쉬운문제가지고 미적분
-하면 컴퓨터가 사람을 비웃습니다.
-그냥 루프를 돌려서 먼저 일단위,그다음 시간단위, 그다음 분단위로 루프를 돌리면
-해당 시점을 미적분하지 않아도 정확하게(?) 알수 있습니다.
-
-이렇게 해서 합삭시점을 분단위까지 구할수 있고, 그때의 태양황경(=달의 황경)을
-구할수 있습니다.
-그런데 이 시점은 진태양시에서 약간의 오차를 갖는데(약 10분내외), 이 진태양시가
-평균태양시로 변환되면서 최대 40분내의 오차가 생깁니다.
-
-이제 그날이 d의 값을 통해서 그레고리력으로 몇일이라는것을 알수 있죠.
-
-그럼 그날이 음력 초하루가 되는거구요.
-
-그날 일식이 있는지를 알기 위해서는 합삭시점의 태양황경과 저 위에서 구한
-교점황경의 차이를 구합니다.
-
- 교점차=sreal-mi
-
-를 한후에 이 교점차의 범위가 -18.5도에서 +18.5도 사이에 있으면 일식이
-있는것이고, 이범위를 벗어나면 일식이 없는거죠.
-이 범위는 역법의 원리분석에 자세히 설명되어 있습니다.
-
-1항성일이 100년에 0.001초씩 길어진다는것은 반영되지 않았습니다.
-(사실 이 0.001초라는 수치가 맞는지 틀리는지 확인을 못했거든요)
-
-사실은 역법의 원리분석에 보면 달과 태양경도식에 율리우스세기수와 관련된
-항(曆表時관련항)이 있기는 하지만요.. 이 수치는 극히 작다고 생각하여
-무시했습니다. 하지만 이 역표시가 4000년에 약 2시간~6시간가량의 오차를
-불러오는것 같습니다.
-
-이상이 제가 사용한 일식계산 방법입니다.
-24절기의 계산방법은 전혀 다릅니다.
-이 다음글을 참고하세요.
-
- PRINTER/CAPTURE를 OFF 하시고 [ENTER] 를 누르십시오.
diff --git a/pack.sh b/pack.sh
deleted file mode 100755
index f5d2d9f..0000000
--- a/pack.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/sh
-# $Id$
-
-cp -af package.xml.tmpl package.xml
-list=$(grep "md5sum" ./package.xml | sed 's/.*"@\|@".*//g')
-
-for i in $list
-do
- md5s=$(md5sum $i | awk '{print $1}')
- perl -pi -e "s!\@${i}\@!${md5s}!g" ./package.xml
-done
-
-curdate=$(date +'%Y-%m-%d')
-curtime=$(date +'%H:%M:%S')
-
-perl -pi -e "s!\@curdate\@!${curdate}!g" ./package.xml
-perl -pi -e "s!\@curtime\@!${curtime}!g" ./package.xml
-
-#phpdoc -s on -o HTML:Smarty:PHP -f edb.php,EDB/*.php -t docs
-
-[ -z "$1" ] && pear package
diff --git a/package.xml b/package.xml
index 7f71d12..17dd055 100644
--- a/package.xml
+++ b/package.xml
@@ -1,102 +1,105 @@
-
-
- Lunar
- pear.oops.org
- Solar/Lunar Convert API
- Solar/Lunar convert API. Original algorithm is by 고영창 (http://afnmp3.homeip.net/~kohyc/calendar/)
-
- JoungKyun.Kim
- joungkyun
- joungkyun@gmail.com
- yes
-
- 2015-06-09
- 03:16:08
-
- 1.0.2
- 1.0.0
-
-
- devel
- stable
-
- BSD(Lunar.php) & 고영창(Lunar/Lunar_API.php)
- * 갑진년이 갑신년으로 표기되는 문제 수정
-
-
-
-
-
-
-
-
-
-
- 5.1.0
-
-
- 1.4.3
-
-
-
-
- calendar
- php
-
-
-
-
-
-
-
- 1.0.2
- 1.0.0
-
-
- stable
- stable
-
- 2015-06-09
- BSD(Lunar.php) & 고영창(Lunar/Lunar_API.php)
- * 갑진년이 갑신년으로 표기되는 문제 수정
-
-
-
-
- 1.0.1
- 1.0.0
-
-
- stable
- stable
-
- 2014-01-25
- BSD(Lunar.php) & 고영창(Lunar/Lunar_API.php)
- * is_leap method : 1582년 이전은 율리우스력 기준으로 윤년 판단. [@33]
+
+ Lunar
+ pear.oops.org
+ Solar/Lunar Convert API
+ Solar/Lunar convert API. Original algorithm is by 고영창 (http://afnmp3.homeip.net/~kohyc/calendar/)
+
+ JoungKyun.Kim
+ joungkyun
+ joungkyun@gmail.com
+ yes
+
+ 2015-06-09
+ 03:16:08
+
+ 1.0.2
+ 1.0.0
+
+
+ devel
+ stable
+
+ BSD(Lunar.php) & 고영창(Lunar/Lunar_API.php)
+
+* 갑진년이 갑신년으로 표기되는 문제 수정
+
+
+
+
+
+
+
+
+
+
+ 5.1.0
+
+
+ 1.4.3
+
+
+
+
+ calendar
+ php
+
+
+
+
+
+
+
+ 1.0.2
+ 1.0.0
+
+
+ stable
+ stable
+
+ 2015-06-09
+ BSD(Lunar.php) & 고영창(Lunar/Lunar_API.php)
+
+* 갑진년이 갑신년으로 표기되는 문제 수정
+
+
+
+
+ 1.0.1
+ 1.0.0
+
+
+ stable
+ stable
+
+ 2014-01-25
+ BSD(Lunar.php) & 고영창(Lunar/Lunar_API.php)
+
+* is_leap method : 1582년 이전은 율리우스력 기준으로 윤년 판단. [@33]
* calendar example:
- 6월과 7월의 마지막날 잘못 표기되는 문제 수정
- IE에서 calendar 토요일 밀리는 문제 해결
- 율리우스력 출력시에 절기 정보 잘못 나오는 문제 수정
* Lunar Frontend method license를 BSD license로 변경
-
-
-
-
- 1.0.0
- 1.0.0
-
-
- stable
- stable
-
- 2013-07-19
- BSD(Lunar.php) & 고영창(Lunar/Lunar_API.php)
- * release 1.0.0
+
+
+
+
+ 1.0.0
+ 1.0.0
+
+
+ stable
+ stable
+
+ 2013-07-19
+ BSD(Lunar.php) & 고영창(Lunar/Lunar_API.php)
+
+* release 1.0.0
* 진짜 만세력 0.92(perl version) and 0.93(pascal version)으로 Core API 포팅
* 1582년 10월 15일 이전 율리우스력 변환
* 율리우스 적일 추가
-
-
-
+
+
+
diff --git a/package.xml.tmpl b/package.xml.tmpl
deleted file mode 100644
index b2cf54f..0000000
--- a/package.xml.tmpl
+++ /dev/null
@@ -1,102 +0,0 @@
-
-
-
- Lunar
- pear.oops.org
- Solar/Lunar Convert API
- Solar/Lunar convert API. Original algorithm is by 고영창 (http://afnmp3.homeip.net/~kohyc/calendar/)
-
- JoungKyun.Kim
- joungkyun
- joungkyun@gmail.com
- yes
-
- @curdate@
- @curtime@
-
- 1.0.2
- 1.0.0
-
-
- devel
- stable
-
- BSD(Lunar.php) & 고영창(Lunar/Lunar_API.php)
- * 갑진년이 갑신년으로 표기되는 문제 수정
-
-
-
-
-
-
-
-
-
-
- 5.1.0
-
-
- 1.4.3
-
-
-
-
- calendar
- php
-
-
-
-
-
-
-
- 1.0.2
- 1.0.0
-
-
- stable
- stable
-
- @curdate@
- BSD(Lunar.php) & 고영창(Lunar/Lunar_API.php)
- * 갑진년이 갑신년으로 표기되는 문제 수정
-
-
-
-
- 1.0.1
- 1.0.0
-
-
- stable
- stable
-
- 2014-01-25
- BSD(Lunar.php) & 고영창(Lunar/Lunar_API.php)
- * is_leap method : 1582년 이전은 율리우스력 기준으로 윤년 판단. [@33]
-* calendar example:
- - 6월과 7월의 마지막날 잘못 표기되는 문제 수정
- - IE에서 calendar 토요일 밀리는 문제 해결
- - 율리우스력 출력시에 절기 정보 잘못 나오는 문제 수정
-* Lunar Frontend method license를 BSD license로 변경
-
-
-
-
- 1.0.0
- 1.0.0
-
-
- stable
- stable
-
- 2013-07-19
- BSD(Lunar.php) & 고영창(Lunar/Lunar_API.php)
- * release 1.0.0
-* 진짜 만세력 0.92(perl version) and 0.93(pascal version)으로 Core API 포팅
-* 1582년 10월 15일 이전 율리우스력 변환
-* 율리우스 적일 추가
-
-
-
-
diff --git a/tests/calendar/158210.php b/tests/calendar/158210.php
deleted file mode 100644
index 58956d5..0000000
--- a/tests/calendar/158210.php
+++ /dev/null
@@ -1,12 +0,0 @@
-
diff --git a/tests/calendar/error.html b/tests/calendar/error.html
deleted file mode 100644
index 5c515be..0000000
--- a/tests/calendar/error.html
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- 유효기간 에러
-
-
-
-
-
-
diff --git a/tests/calendar/index.php b/tests/calendar/index.php
deleted file mode 100644
index 062c56c..0000000
--- a/tests/calendar/index.php
+++ /dev/null
@@ -1,546 +0,0 @@
- 12 ) {
- $nextm = 1;
- $nexty = $y + 1;
- } else
- $nexty = $y;
-
- if ( $prevm < 10 )
- $prevm = '0' . $prevm;
-
- if ( $nextm < 10 )
- $nextm = '0' . $nextm;
-
- return (object) array (
- 'prev' => $prevy . '-' . $prevm,
- 'next' => $nexty . '-' . $nextm
- );
-}
-
-$cur = date ('Y-m-d');
-
-if ( preg_match ('/^(-?[0-9]{1,4})-([0-9]{1,2})$/', $_GET['v'], $match) ) {
- array_shift ($match);
- list ($year, $month) = $match;
-} else
- list ($year, $month) = preg_split ('/-/', $cur);
-
-if ( $year < -2400 || $year > 2200 ) {
- readfile ('./error.html');
- exit;
-}
-
-$gregorian_check = $year . $month;
-
-$lday = array (0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
-$wday = array ('일' => 1, '월' => 2, '화' => 3, '수' => 4, '목' => 5, '금' => 6, '토' => 7);
-
-$old = microtime ();
-
-$lunar = new Lunar;
-
-$cdate = $year . '-' . $month . '-01';
-$fday = $lunar->tolunar ($cdate);
-$tune = $lunar->dayfortune ($cdate);
-$moon = $lunar->moonstatus ($cdate);
-$moon1 = $lunar->moonstatus ($year . '-' . $month . '-28');
-$s28 = $lunar->s28day ($cdate);
-$season = $lunar->seasondate ($cdate);
-
-/*
- * pear_Lunar 1.0.0에서는 is_leap method가 연도만으로 율리우스력
- * 판단을 하지 않으며로 아래과 같이 조건을 체크해야 한다.
- * if ( $lunar->is_leap ($year, $year < 1583 ? true : false) )
- * pear_Lunar 1.0.1 부터는 2번째 인자가 없어도, 연도만으로
- * 율리우스력 판단을 한다.
- */
-if ( $lunar->is_leap ($year) )
- $lday[2] = 29;
-$lastday = $lday[(int) $month];
-
-if ( $fday->moonyoon )
- $fday->month = '(閏)' . $fday->month;
-
-$tdstart = $wday[$fday->week];
-$tdend = $tdstart + $lastday;
-
-if ( $gregorian_check == 158210 ) {
- require_once '158210.php';
-} else {
- $lm = '[ \'\', \'' . $fday->month . '\'';
- $ld = '[ 0, ' . $fday->day;
- $l28s = '[ \'\', \'' . $s28->h . '\'';
- $liljin = '[ \'\', \'' . $tune->hday . '\'';
-
- $_s28 = $s28;
- $mbuf = $fday->month;
- $dbuf = $fday->day;
- for ( $i=1; $i<$lastday; $i++ ) {
- $chk = false;
- $dbuf++;
-
- if ( $fday->largemonth ) {
- if ( $dbuf > 30 ) {
- $mbuf = preg_replace ('/[^0-9]/', '', $fday->month);
- $mbuf ++;
- $dbuf -= 30;
- $chk = true;
- }
- } else {
- if ( $dbuf > 29 ) {
- $mbuf = preg_replace ('/[^0-9]/', '', $fday->month);
- $mbuf ++;
- $dbuf -= 29;
- $chk = true;
- }
- }
-
- if ( $chk ) {
- if ( ($i + 2) > $lday[(int) $month] ) {
- $cmon = $month + 1;
- $cday = ($i + 2) - $lday[(int) $month];
- } else {
- $cmon = $month;
- $cday = $i + 2;
- }
- $cdate = '';
- $cdate = $year . '-' . $cmon . '-' . $cday;
- #echo $cdate . ' : ' . $lday[(int) $month] . ' : ' . $i . " \n";
- $r = $lunar->tolunar ($cdate);
- /*
- echo "\n";
- print_r ($r);
- echo " \n";
- */
-
- if ( $season->center->month != $month )
- $season = $lunar->seasondate ($cdate);
-
- $mbuf = $r->moonyoon ? '(閏)' : '';
- $mbuf .= $r->month;
-
- if ( $r->largemonth )
- $fday->largemonth = true;
- $chk == false;
- }
-
- $lm .= ', \'' . $mbuf . '\'';
- $ld .= ', ' . $dbuf;
- $_s28 = $lunar->s28day ($_s28);
- $l28s .= ', \'' . $_s28->h . '\'';
-
- $gindex = $tune->data->d + $i;
- if ( $gindex >= 60 )
- $gindex -= 60;
-
- $liljin .= ', \'' . $lunar->ganji_ref($gindex, true) . '\'';
- }
- $lm .= ' ]';
- $ld .= ' ]';
- $l28s .= ' ]';
- $liljin .= ' ]';
-}
-
-$np = prev_next ($year, $month);
-
-$hyear = $lunar->human_year ($year);
-
-$new = microtime ();
-$ptime = get_microtime ($old, $new);
-?>
-
-
-
- Lunar/Solar Pear package
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Lunar/Solar Pear Calendar
- About
- View Source
-
-
-
-
이전월
-
=$hyear?>년 =$month?>월 (=$tune->hmonth?>)
-
다음월
-
-
-
-
-
-
일
-
월
-
화
-
수
-
목
-
금
-
토
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
1
-
-
-
-
Processing Time:
=$ptime?> sec
-
Valid Period:
BC 2401(-2400)년 ~ AD 2300
-
-
이번달 절입:
=$season->center->name?>
- =$season->center->hyear?>년
- =$season->center->month?>월
- =$season->center->day?>일
- =$season->center->hour?>시
- =$season->center->min?>분
-
Julian Date =$season->center->julian?>
-
이번달 중기:
=$season->ccenter->name?>
- =$season->ccenter->hyear?>년
- =$season->ccenter->month?>월
- =$season->ccenter->day?>일
- =$season->ccenter->hour?>시
- =$season->ccenter->min?>분
-
Julian Date =$season->ccenter->julian?>
-
다음달 절입:
=$season->nenter->name?>
- =$season->nenter->hyear?>년
- =$season->nenter->month?>월
- =$season->nenter->day?>일
- =$season->nenter->hour?>시
- =$season->nenter->min?>분
-
Julian Date =$season->nenter->julian?>
-
-
합삭 (New Moon):
- =$moon->new->hyear?>년
- =$moon->new->month?>월
- =$moon->new->day?>일
- =$moon->new->hour?>시
- =$moon->new->min?>분
-
Julian Date =$moon->new->julian?>
-
망 (Full Moon):
- =$moon->full->hyear?>년
- =$moon->full->month?>월
- =$moon->full->day?>일
- =$moon->full->hour?>시
- =$moon->full->min?>분
-
Julian Date =$moon->full->julian?>
-
-
합삭 (New Moon):
- =$moon1->new->hyear?>년
- =$moon1->new->month?>월
- =$moon1->new->day?>일
- =$moon1->new->hour?>시
- =$moon1->new->min?>분
-
Julian Date =$moon1->new->julian?>
-
망 (Full Moon):
- =$moon1->full->hyear?>년
- =$moon1->full->month?>월
- =$moon1->full->day?>일
- =$moon1->full->hour?>시
- =$moon1->full->min?>분
-
Julian Date =$moon1->full->julian?>
-
-
-
-
-
-
-
* About Lunar/Solar Pear Package
-
-
- Lunar Pear package는
- 고영창 님의
- 진짜만세력 0.92 Perl 버전을
- PHP로 포팅한 것이다.
-
-
-
- 먼저 달력을 보기전에 다음 사항을 꼭 인지를 해야 한다.
-
-
-
- 우리가 사용하는 그레고리력은 1582년 10월 15일 부터 존재한다.
- 1582년 10월 15일 이전은 율리우스력으로 표기한다.
- 1582년 10월 5일 부터 1582년 10월 14일은 calender상에 존재하지 않는다.
-
-
-
- 그럼 고영창님의 진짜만세력 과 다른
- 달력들과의 차이가 발생하는 이유를 살펴 보자면 다음의 특징들이 있다.
-
-
-
- 대부분의 calendar들은 1582년 10월 15일 이전을 율리우스력으로 표기한다.
- 진짜만세력 은 모든 표시를
- 그레고리력으로 표기한다.
- 심지어 진짜만세력 은
- 존재하지 않는 1582.10.5~1582.10.14 기간을 표시한다.
-
-
-
- 이런 이유로 고영장님의 진짜만세력 은
- 1582년 10월 15일 이전의 데이터에 대해서는 다른 달력들과 많은 차이를 보이게
- 된다. 하지만, 그렇다고 해서 고영창님의 달력이 잘못되었다고 할 수는 없으며,
- 율리우스 적일(Julian date)의 경우에는 정확한 표기를 하고 있는 것으로 보인다.
-
-
-
- 또한, 기존의 달력들이 database를 구축하여 사용하는 방식이나, 고영창님의
- 진짜만세력 은 계산에 의하여 사용
- 되므로, 음력 윤달의 기준이 조금 다르기 때문에 일간이나 음력윤달의 차이로
- 인하여 음력날자가 1~2일 정도가 차이가 발생할 수 있다. 이에 대해서는 고영창님의
- 홈페이지 를
- 참조하기 바란다.
-
-
- 진짜만세력 과 여기서 배포하는
- 진짜만세력 PHP API의 차이는 다음과 같다.
-
-
-
- 모든 계산은 original 진짜만세력 의
- 계산 방식을 따른다. (이는 다른 calendar들과 음력 날자가 1~2일의 차이가
- 발생할 수 있고, 음력 윤달이 다를 수 있다.)
- 1582년 10월 15일 이전의 표기를 율리우스력을 사용한다. (다른
- calender들과 역사 기록과 맞추기 위해서...)
- 율리우스력을 사용하기 때문에 기원전 calender는 BC 4713년
- 2월 8일 부터 가능하다.
- 위의 이유는 진짜만세력 의
- 계산은 그레고리력으로 하기 때문에 율리우스력을 그레고리력으로
- 변환하기 위한 알고리즘의 제약 때문이다.
-
-
-
- 고영창님의 진짜만세력 과 동일하게
- 포팅한 버전을 원할 경우,
- http://oops.org/project/manse/original 을
- 참고 하도록 한다.
-
-
-
- 이 API의 유효기간은 다음과 같다.
-
-
-
- 32bit:
-
- 양력 BC 2086(-2087)년 2월 9일 ~ AD 6078년 1월 29일
- 음력 BC 2086(-2087)년 1월 1일 ~ AD 6077년 12월 29일
- BC 2087년 7월 5일부터는 계산이 급속하게 느려진다.
-
-
- 64bit:
-
- BC 4713(-4712)년 2월 8일 ~ AD 9999년 12월 31일
- API의 연도 체크가 4자리 까지이므로 10000년 이상은 확인 못함
- 64bit 계산이 가능한 시점까지 가능할 듯..
- 기원전의 경우 율리우스 적일이 BC 4713년 1월 1일 부터이므로
- 그레고리력 변환이 가능한 BC 4713년 2월 8일부터 가능하다.
-
-
-
-
-
- 현 페이지의 달력은 BC 2399년 부터 AD 2300년 까지만 지원을 한다. 그 이유는
- 이 시점을 벋어날 경우, 계산 속도가 급속하게 느려지기 때문이다 .
-
-
-
- 왠만하면, 과거 2000년과 미래 100년 구간 이내에서 사용하는 것을 권장한다.
-
-
-
- 진짜만세력 에 대해서는 다음의 URL을
- 참고 하기 바란다.
-
- Original Site
- http://afnmp3.homeip.net:81/~kohyc/calendar/index.cgi
- PHP Source
- OOPS.org SVN
- Download & Installation
- pear.oops.org
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/tests/calendar/manse-ie.css b/tests/calendar/manse-ie.css
deleted file mode 100644
index 533e264..0000000
--- a/tests/calendar/manse-ie.css
+++ /dev/null
@@ -1,5 +0,0 @@
-@charset "utf-8";
-
-.ctd {
- width: 69px;
-}
diff --git a/tests/calendar/manse-ie7.css b/tests/calendar/manse-ie7.css
deleted file mode 100644
index 4375352..0000000
--- a/tests/calendar/manse-ie7.css
+++ /dev/null
@@ -1,5 +0,0 @@
-@charset "utf-8";
-
-.ctd {
- display: inline;
-}
diff --git a/tests/calendar/manse.css b/tests/calendar/manse.css
deleted file mode 100644
index 71bc89c..0000000
--- a/tests/calendar/manse.css
+++ /dev/null
@@ -1,118 +0,0 @@
-@charset "utf-8"
-
-@import url(//cdn.oops.org/fonts/nanumgothic.css);
-
-* html #poststuff {
- height: 100%; /* kill peekaboo bug in IE */
-}
-
-html, body {
- margin: 0;
- padding: 0;
- height: 100%;
-}
-
-body, div, td, li, label {
- font-size: 12px;
- font-family: 'Nanum Gothic', '나눔고딕', '굴림', Gulim, sans-serif;
- color: #555;
-}
-
-h3 {
- text-align: center;
-}
-
-.guide {
- margin: 0 auto;
- padding-top: 20px;
- width: 600px;
- /* border: 1px dotted #ccc; */
-}
-
-.year-title {
- text-align: center;
-}
-
-.cur-month {
- font-weight: bold;
- font-size: 24px;
- margin-left: 20px;
- margin-right: 20px;
-}
-
-div#calendar {
- background-color: #ddd;
- margin: 10px auto;
- padding-top: 3px;
- padding-left: 4px;
- padding-bottom: 3px;
- width: 90%;
- /* border: 1px dotted #ddd; */
- border-radius: 6px;
- -moz-border-radius: 6px;
- -webkit-border-radius: 6px;
-}
-
-div#context {
- margin: 10px auto;
- width: 90%;
-}
-
-.ctd {
- text-align: left;
- background-color: #eee;
- width: 70px;
- display: inline-block;
- margin: 2px 2px;
- font-size: 14px;
-}
-
-.yoil {
- font-size: 12px;
- text-align: center;
- font-weight: bold;
-}
-
-.day {
- float: right;
- font-size: 24px;
- font-weight: bold;
-}
-
-.sun {
- color: #da4f49;
-}
-
-.sat {
- color: #2f96b4;
-}
-
-.su {
- color: #555;
-}
-
-.lun {
- color: #5bb75b;
- font-size: 12px;
-}
-
-.iljin {
- color: #555;
-}
-
-.julip {
- color: #e81ad8;
-}
-
-.b {
- font-weight: bold;
-}
-
-.stitle {
- display: inline-block;
- width: 120px;
-}
-
-.copy {
- float: right;
-}
diff --git a/tests/confirm1.php b/tests/confirm1.php
deleted file mode 100644
index eb0cea4..0000000
--- a/tests/confirm1.php
+++ /dev/null
@@ -1,73 +0,0 @@
- 양력 요일 검증 ====================================\n";
-$z = array ();
-for ( $i=1842; $i<=2040; $i++ ) {
- $z = $lunar->tolunar ($i . '0101');
- $p[] = array ($z->date, $z->tday);
- #echo sprintf ("\tarray ('%d', '%s'),\n", preg_replace ('/-/', '', $p->date), $p->tday);
-}
-
-foreach ( $p as $v ) {
- $y = substr ($v[0], 0, 4);
- $m = substr ($v[0], 5, 2);
- $d = substr ($v[0], 8, 2);
-
- $td = date ('D', mktime (0, 0, 0, $m, $d, $y));
-
- $buf = $lunar->tosolar ($v[0]);
- if ( $v[1] != $buf->tday ) {
- printf (
- "%s (%s - $td) : %s (%s)\n",
- $v[0], $v[1], $buf->date, $buf->tday
- );
- }
-}
-
-
-echo "== 양력 -> 음력 요일 검증 ====================================\n";
-
-$z = array ();
-for ( $i=1841; $i<=2040; $i++ ) {
- $z = $lunar->tosolar ($i . '0101');
- $p[] = array ($z->date, $z->tday);
- #echo sprintf ("\tarray ('%d', '%s'),\n", preg_replace ('/-/', '', $p->date), $p->tday);
-}
-
-foreach ( $p as $v ) {
- $y = substr ($v[0], 0, 4);
- $m = substr ($v[0], 5, 2);
- $d = substr ($v[0], 8, 2);
-
- $td = date ('D', mktime (0, 0, 0, $m, $d, $y));
-
- $buf = $lunar->tolunar($v[0]);
- if ( $v[1] != $buf->tday ) {
- printf (
- "%s (%s - $td) : %s (%s)\n",
- $v[0], $v[1], $buf->date, $buf->tday
- );
- }
-}
diff --git a/tests/confirm2.php b/tests/confirm2.php
deleted file mode 100644
index a361d1f..0000000
--- a/tests/confirm2.php
+++ /dev/null
@@ -1,40 +0,0 @@
-음력->양력으로
- * 변환하여 변환전의 양력과 변환후의 양력을 비교 검증
- */
-
-$iniget = function_exists ('___ini_get') ? '___ini_get' : 'ini_get';
-$iniset = function_exists ('___ini_set') ? '___ini_set' : 'ini_set';
-
-$cwd = getcwd ();
-$ccwd = basename ($cwd);
-if ( $ccwd == 'tests' ) {
- $oldpath = $iniget ('include_path');
- $newpath = preg_replace ("!/{$ccwd}!", '', $cwd);
- $iniset ('include_path', $newpath . ':' . $oldpath);
-}
-
-require_once 'Lunar.php';
-
-$lunar = new Lunar;
-
-$z = array ();
-for ( $i=1842; $i<=2041; $i++ ) {
- for ( $j=1; $j<=12; $j++ ) {
- $j = ($j < 10) ? '0' . $j : $j;
-
- echo "- $i.$j.01\n";
- $z = $lunar->tolunar ($i . $j . '01');
- $z1 = $lunar->tosolar ($z->date, $z->moonyoon);
-
- if ( $z1->date != "{$i}-{$j}-01" || $z->tday != $z1->tday ) {
- printf ("** %d-%s-01 %s(양) %s(음) %s %s\n", $i, $j, $z1->date, $z->date, $z1->tday, $z->tday);
- }
- }
-
-}
-
diff --git a/tests/sample.php b/tests/sample.php
deleted file mode 100644
index 3a4efcd..0000000
--- a/tests/sample.php
+++ /dev/null
@@ -1,368 +0,0 @@
-toargs (&$v)
- *
- * input:
- * 2013-07-13
- * 2013-7-13
- * 20130713
- * 1373641200
- * Null
- *
- * output:
- * Array
- * (
- * [0] => 2013
- * [1] => 7
- * [2] => 13
- * )
- *
- * and reference variavble $v is changed to '2013-07-13'
- */
-
-$v = '2013-7-13';
-$r = $lunar->toargs ($v);
-echo "### $v\n";
-print_r ($r);
-
-/*
- * $lunar->human_year ($y)
- *
- * input:
- * -2334
- *
- * output:
- * BC 2333
- */
-
-echo $lunar->human_year (-2333);
-
-/*
- * $lunar->is_reap ($y)
- *
- * input:
- * 1992 (양력)
- *
- * output:
- * true
- */
-
-if ( $lunar->is_leap (1992) )
- echo "This is Yoon Year\n";
-else
- echo "This is not Yoon Year\n";
-
-/*
- * $lunar->tolunar ($date)
- *
- * input:
- * 2013-07-16 or
- * 2013-7-16 or
- * 20130716 or
- * 1373900400 or
- * NULL
- *
- * output
- * stdClass Object
- * (
- * [date] => 2013-06-09
- * [dangi] => 4346
- * [hyear] => AD 2013
- * [year] => 2013
- * [month] => 6
- * [day] => 9
- * [moonyoon] =>
- * [largemonth] => 1
- * [week] => 화
- * [hweek] => 火
- * [unixstamp] => 1373900400
- * [ganji] => 계사
- * [hganji] => 癸巳
- * [gan] => 계
- * [hgan] => 癸
- * [ji] => 사
- * [hji] => 巳
- * [ddi] => 뱀
- * )
- */
-
-print_r ($lunar->tolunar ('2013-07-16'));
-
-/*
- * $lunar->tosolar ($date)
- *
- * input:
- * 2013-06-09 or
- * 2013-6-09 or
- * 20130609 or
- * NULL
- *
- * output
- * stdClass Object
- * (
- * [date] => 2013-07-16
- * [dangi] => 4346
- * [hyear] => AD 2013
- * [year] => 2013
- * [month] => 7
- * [day] => 16
- * [week] => 화
- * [hweek] => 火
- * [unixstamp] => 1373900400
- * [ganji] => 계사
- * [hganji] => 癸巳
- * [gan] => 계
- * [hgan] => 癸
- * [ji] => 사
- * [hji] => 巳
- * [ddi] => 뱀
- * )
- */
-
-print_r ($lunar->tosolar ('2013-06-09'));
-
-/*
- * 구하는 음력월의 윤달 여부를 모른다면 다음과 같이 확인
- * 과정이 필요하다.
- */
-$lun = '2013-06-09';
-$solv = $lunar->tosolar ($lun);
-$lunv = $lunar->tolunar ($sol->date);
-if ( $lun != $lunv->date )
- $solv = $lunar->tosolar ($lun, true);
-
-
-/*
- * $lunar->dayfortuen ($date)
- *
- * input:
- * 2013-07-16 or
- * 2013-7-16 or
- * 20130716 or
- * 1373900400 or
- * NULL
- *
- * output:
- * stdClass Object
- * (
- * [data] => stdClass Object
- * (
- * [y] => 29 // 세차 index
- * [m] => 55 // 월건 index
- * [d] => 19 // 일진 index
- * )
- *
- * [year] => 계사 // 세차 값
- * [month] => 기미 // 월건 값
- * [day] => 계미 // 일진 값
- * [hyear] => 癸巳 // 한자 세차 값
- * [hmonth] => 己未 // 한자 월건 값
- * [hday] => 癸未 // 한자 일진 값
- * )
- */
-
-print_r ($lunar->dayfortune ('2013-07-16'));
-
-/*
- * 7월 1일 부터 30일 까지의 일진을 구할 경우
- * 다음은 아주 안좋은 방법이다.
- */
-
-for ( $i=1; $i<31; $i++ ) {
- $r = $lunar->dayfortune ('2013-07-' . $i);
- $iljin[$i] = $r->day;
-}
-
-/*
- * 위의 경우는 아래와 같이 $lunar->ganji_ref method를 이용하여
- * 성능을 높일 수 있다.
- */
-
-$r = $lunar->dayfortune ('2013-07-01');
-$iljin[$i] = $r->day;
-$gindex = $r->data->d;
-
-for ( $i=2; $i<31; $i++ ) {
- $gindex++;
- if ( $gindex >= 60 )
- $gindex -= 60;
- $iljin[$i] = $lunar->ganji_ref[$gindex];
-}
-
-
-/*
- * $lunar->s28day ($date)
- *
- * input:
- * 2013-07-16 or
- * 2013-7-16 or
- * 20130716 or
- * 1373900400 or
- * NULL
- *
- * output:
- * stdClass Object
- * (
- * [data] => 5
- * [k] => 미
- * [h] => 尾
- * )
- */
-
-print_r ($lunar->s28day ('2013-07-16'));
-
-/*
- * 역시 7/1 부터 7/30 까지의 일진을 구할 경우에는 다음과 같이
- * 하면 성능이 매우 좋아진다.
- */
-
-$s28 = null;
-for ( $i=0; $i<30; $i++ ) {
- if ( $s28 === null )
- $s28 = $lunar->s28day ('2013-07-01');
- else
- $s28 = $lunar->s28day ($s28);
-
- $s28v[$i] = $s28->k;
-}
-
-/*
- * $lunar->seasondate ($date)
- *
- * input:
- * 2013-07-16 or
- * 2013-7-16 or
- * 20130716 or
- * 1373900400 or
- * NULL
- *
- * output:
- * stdClass Object
- * (
- * [center] => stdClass Object
- * (
- * [name] => 소서
- * [hname] => 小暑
- * [hyear] => AD 2013
- * [year] => 2013
- * [month] => 7
- * [day] => 7
- * [hour] => 7
- * [min] => 49
- * )
- *
- * [ccenter] => stdClass Object
- * (
- * [name] => 대서
- * [hname] => 大暑
- * [hyear] => AD 2013
- * [year] => 2013
- * [month] => 7
- * [day] => 23
- * [hour] => 1
- * [min] => 11
- * )
- *
- * [nenter] => stdClass Object
- * (
- * [name] => 입추
- * [hname] => 立秋
- * [hyear] => AD 2013
- * [year] => 2013
- * [month] => 8
- * [day] => 7
- * [hour] => 17
- * [min] => 36
- * )
- * )
- */
-
-print_r ($lunar->seasondate ('2013-07-16'));
-
-
-/*
- * $lunar->moonstatus ($date)
- *
- * input:
- * 2013-07-16 or
- * 2013-7-16 or
- * 20130716 or
- * 1373900400 or
- * NULL
- *
- * output:
- * stdClass Object
- * (
- * [new] => stdClass Object
- * (
- * [hyear] => AD 2013
- * [year] => 2013
- * [month] => 7
- * [day] => 8
- * [hour] => 16
- * [min] => 15
- * )
- *
- * [full] => stdClass Object
- * (
- * [hyear] => AD 2013
- * [year] => 2013
- * [month] => 7
- * [day] => 23
- * [hour] => 2
- * [min] => 59
- * )
- * )
- */
-
-print_r ($lunar->moonstatus ('2013-07-01'));
-
-/*
- * 합삭/망 정보의 경우, 한달에 음력월이 2개가 있으므로,
- * 1일의 정보만 얻어서는 합삭/망 중에 1개의 정보만 나올 수 있다.
- * 그러므로, 1일의 데이터를 얻은 다음, 음력 1일의 정보까지 구하면
- * 한달의 합삭/망 정보를 모두 표현할 수 있다.
- */
-
-$lun = $lunar->tolunar ('2013-07-01');
-
-if ( $lun->largemonth ) // 평달의 경우 마지막이 29일이고 큰달은 30일이다.
- $plus = 29 - $lun->day;
-else
- $plus = 30 - $lun->day;
-
-$r1 = $lunar->moonstatus ('2013-07-01'); // 음력 2013-05-23
-$r2 = $lunar->moonstatus ('2013-07-' . 1 + $plus); // 음력 2013-06-01
-
-print_r ($r1);
-print_r ($r2);
-
-?>
diff --git a/tests/test.php b/tests/test.php
deleted file mode 100644
index d50c47a..0000000
--- a/tests/test.php
+++ /dev/null
@@ -1,95 +0,0 @@
-toargs ($target);
-
-echo "**\n";
-printf ("** target date is %s\n", $target);
-echo "**\n";
-echo "\n";
-
-# 1일의 음력 정보
-$z = $lunar->tolunar ($target);
-# 이번달의 세차/월간/일진 정보
-$tune = $lunar->dayfortune ($target);
-# 1일의 음력월에 대한 합삭/망 정보
-$moon = $lunar->moonstatus ($target);
-# 1일의 28수 정보
-$s28 = $lunar->s28day ($target);
-# 이번달의 절기 정보
-$season = $lunar->seasondate ($target);
-
-$yoon = $z->moonyoon ? ', 윤달' : '';
-$bmon = $z->largemonth ? '큰달' : '평달';
-
-echo <<date} {$z->week} ({$z->hweek})
-연 {$z->year}
-월 {$z->month} ($bmon$yoon) {$tune->month}({$tune->hmonth})월
-일 {$z->day} {$tune->day}({$tune->hday})일
-간지 {$z->ganji} ({$z->hganji}) ({$tune->year})
-띠 {$z->ddi}
-28수 {$s28->k} ({$s28->h})
-
-합삭 (New Moon) {$moon->new->year}년 {$moon->new->month}월 {$moon->new->day}일 {$moon->new->hour}시 {$moon->new->min}분
-망 (Full Moon) {$moon->full->year}년 {$moon->full->month}월 {$moon->full->day}일 {$moon->full->hour}시 {$moon->full->min}분
-
-
-EOF;
-
-foreach ( $season as $v )
- printf ("%s(%s) %d년 %d월 %d일\n", $v->name, $v->hname, $v->year, $v->month, $v->day);
-
-
-$z = $lunar->tosolar ($z->date, $z->moonyoon);
-
-echo <<date} {$z->week} ({$z->hweek})
-연 {$z->year}
-월 {$z->month}
-일 {$z->day}
-간지 {$z->ganji} ({$z->hganji})
-띠 {$z->ddi}
-
-EOF;
-
-/*
- * Local variables:
- * tab-width: 4
- * c-basic-offset: 4
- * End:
- * vim: set filetype=php noet sw=4 ts=4 fdm=marker:
- * vim600: noet sw=4 ts=4 fdm=marker
- * vim<600: noet sw=4 ts=4
- */
-?>