solar - 24 절기 solar object - sun position or 24 solar terms PHP/8.0.22

소스닫기 | 24절기 계산 | 음양력변환, 일출몰, 월출몰, 별자리, 일월식 계산 | 메시에 관측정보(실시간) | 메시에 관측정보(오늘전체) | deltaT 계산 | 부활절 날짜 계산
<?php
require_once '_lib/class.calendar.php';
require_once 
'_lib/class.astro.php';
require_once 
'_lib/class.meeus.php';
require_once 
'_lib/class.de405.php';

DE405::set_datadir($_SERVER['DOCUMENT_ROOT'].'/_lib');

$_self $_SERVER['SCRIPT_NAME']; //basename($_SERVER['SCRIPT_NAME']);
$title 'solar - 24 절기 solar object - sun position or 24 solar terms';
$phpv  'PHP/'.PHP_VERSION;

echo <<<___END
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<TITLE>
$title</TITLE><P><H2>$title $phpv</H2>
<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">
<SCRIPT LANGUAGE="JavaScript" type="text/JavaScript">
<!--
var starttime = (new Date()).getTime();
//-->
</SCRIPT>
<STYLE TYPE="text/css">
<!--
  * { font-family:NanumGothic,'나눔고딕','Malgun Gothic',Dotum,'돋움',Gulim,'굴림',Helvetica,Apple-Gothic; }
  body  { font-size:10pt; }
  input { background-color:#ffffff; border:solid 1px #4f7292; margin:0 0 0 0; height:30px; }
  .code {
    /* display: block | table-cell | inline-table; */
    display: table-cell; vertical-align: middle; 
    padding: 10px;
    margin: 10px 5px 20px 5px;  /* 상, 우, 하, 좌 */ /* 바깥쪽 여백임 */
    background: #eeeeee;
    border-radius: 0.5em / 0.5em;
    font-family: Dotumche,monospace; white-space: pre;
    width:800px; }
  .pre-fontspace  { font-family:Dotumche,Helvetica,monospace; white-space: pre; }
  .pre-font  { font-family:Dotumche,Helvetica,monospace; }
  .pre-space { white-space: pre; }
  .solidbox {
    display: table-cell; vertical-align: middle;
    padding: 10px;
    margin: 10px 5px 20px 5px;  /* 상, 우, 하, 좌 */ /* 바깥쪽 여백임 */
    background: #eeeeee;
    border-radius: 0.5em / 0.5em; } /* 모서리 둥글게 */
//-->
</STYLE>
</HEAD>
<BODY>\n
___END;

$_menuindex = array
(
  
'solar.php'         => '24절기 계산',
  
'lunar.php'         => '음양력변환, 일출몰, 월출몰, 별자리, 일월식 계산',
  
'messier.php'       => '메시에 관측정보(실시간)',
  
'messier.today.php' => '메시에 관측정보(오늘전체)',
  
'deltat.php'        => 'deltaT 계산',
  
'easter.php'        => '부활절 날짜 계산'
);

$menu '';
foreach(
$_menuindex AS $k=>$v$menu .= " | <A HREF='$k'>$v</A>";

if(isset(
$_GET['view']))
{
  echo 
'<A HREF="'.$_self.'">소스닫기</A>'.$menu.'<HR>'."\n";
  
highlight_file(basename($_self));
  return;
}

if(isset(
$_POST['_p']))
{
  
$_p $_POST['_p'];
  
$JD calendar::getjd($_p['y'],$_p['m'],$_p['d'],$_p['h'],$_p['i'],$_p['s']);
}
else
{
  list(
$JD,$_p['y'],$_p['m'],$_p['d'],$_p['h'],$_p['i'],$_p['s']) = calendar::curr_datetime();
}

echo 
'<A HREF="'.$_self.'?view=1">소스보기</A>'.$menu.'<HR>'."\n";
echo <<<___END
<H2>데모 - 24절기와 태양의 위치(Geocentric)</H2>
<div class="solidbox pre-font" style="height:30px;"><B>- 유효기간:</B> 1902.01.01 00:00:00 ~ 2037.12.31 23:59:59</div>
<p>
<FORM METHOD=post>
<div class="solidbox pre-space" style="width:800px;"
>년월일-시분초: <INPUT TYPE=text NAME='_p[y]' VALUE='
$_p[y]' SIZE=5 MAXLENGTH=5
>년 <INPUT TYPE=text NAME='_p[m]' VALUE='
$_p[m]' SIZE=2 MAXLENGTH=2
>월 <INPUT TYPE=text NAME='_p[d]' VALUE='
$_p[d]' SIZE=2 MAXLENGTH=2
>일 - <INPUT TYPE=text NAME='_p[h]' VALUE='
$_p[h]' SIZE=2 MAXLENGTH=2
>시 <INPUT TYPE=text NAME='_p[i]' VALUE='
$_p[i]' SIZE=2 MAXLENGTH=2
>분 <INPUT TYPE=text NAME='_p[s]' VALUE='
$_p[s]' SIZE=2 MAXLENGTH=2
>초<BR>
<INPUT TYPE=submit VALUE=' 다시 계산하기 '
> <INPUT TYPE=button VALUE=' 초기화 ' OnClick='location.href="
$_self"'>
</div>
</FORM>
___END;

//$JD     = calendar::getjd($_p['y'],$_p['m'],$_p['d']);
$stoday solar24_today($JD);
$tmoon  solar24($JD,1,0);
$sun    sun($JD);
$sambok sambok($JD);
$tterms solar24(calendar::jd2jdy0($JD),12,0);

echo 
'<p>';
echo 
'<div class=code>';
echo 
'<b>'.$_p['y'].'년</b><p>'."\n";
echo 
'<b>'.$_p['y'].'-'.$_p['m'].'-'.$_p['d'].'(기준)</b>: '.astro::vto($stoday,'-').'<P>'."\n";
print_r($sambok);
echo 
"\n\n";
echo 
'<b>이번달:</b> '.$_p['y'].'년 '.$_p['m'].'월'."\n";
print_r($tmoon);
echo 
"</div>\n";

echo 
"<p>\n";
echo 
'<div class=code>'."\n";
echo 
'<b>현재시각의 태양의 위치:</b>'."\n";
print_r($sun);
echo 
"</div>\n";

echo 
"<p>\n";
echo 
'<div class=code>'."\n";
echo 
"<b>".$_p['y']."년도 24절기:</b>\n";
print_r($tterms);
echo 
"</div>\n";

echo 
"</BODY>\n</HTML>";
return;

?>

Page loading: 0.00(server) + (network) + (browser) seconds