时间:2021-05-28
<?
//世纪万年历
#这是唯一的设置-请输入php文件的位置
$file="http://192.168.1.168/php/rl/s2m.php";
//#农历每月的天数
$everymonth=array(
0=>array(8,0,0,0,0,0,0,0,0,0,0,0,29,30,7,1),
1=>array(0,29,30,29,29,30,29,30,29,30,30,30,29,0,8,2),
2=>array(0,30,29,30,29,29,30,29,30,29,30,30,30,0,9,3),
3=>array(5,29,30,29,30,29,29,30,29,29,30,30,29,30,10,4),
4=>array(0,30,30,29,30,29,29,30,29,29,30,30,29,0,1,5),
5=>array(0,30,30,29,30,30,29,29,30,29,30,29,30,0,2,6),
6=>array(4,29,30,30,29,30,29,30,29,30,29,30,29,30,3,7),
7=>array(0,29,30,29,30,29,30,30,29,30,29,30,29,0,4,8),
8=>array(0,30,29,29,30,30,29,30,29,30,30,29,30,0,5,9),
9=>array(2,29,30,29,29,30,29,30,29,30,30,30,29,30,6,10),
10=>array(0,29,30,29,29,30,29,30,29,30,30,30,29,0,7,11),
11=>array(6,30,29,30,29,29,30,29,29,30,30,29,30,30,8,12),
12=>array(0,30,29,30,29,29,30,29,29,30,30,29,30,0,9,1),
13=>array(0,30,30,29,30,29,29,30,29,29,30,29,30,0,10,2),
14=>array(5,30,30,29,30,29,30,29,30,29,30,29,29,30,1,3),
15=>array(0,30,29,30,30,29,30,29,30,29,30,29,30,0,2,4),
16=>array(0,29,30,29,30,29,30,30,29,30,29,30,29,0,3,5),
17=>array(2,30,29,29,30,29,30,30,29,30,30,29,30,29,4,6),
18=>array(0,30,29,29,30,29,30,29,30,30,29,30,30,0,5,7),
19=>array(7,29,30,29,29,30,29,29,30,30,29,30,30,30,6,8),
20=>array(0,29,30,29,29,30,29,29,30,30,29,30,30,0,7,9),
21=>array(0,30,29,30,29,29,30,29,29,30,29,30,30,0,8,10),
22=>array(5,30,29,30,30,29,29,30,29,29,30,29,30,30,9,11),
23=>array(0,29,30,30,29,30,29,30,29,29,30,29,30,0,10,12),
24=>array(0,29,30,30,29,30,30,29,30,29,30,29,29,0,1,1),
25=>array(4,30,29,30,29,30,30,29,30,30,29,30,29,30,2,2),
26=>array(0,29,29,30,29,30,29,30,30,29,30,30,29,0,3,3),
27=>array(0,30,29,29,30,29,30,29,30,29,30,30,30,0,4,4),
28=>array(2,29,30,29,29,30,29,29,30,29,30,30,30,30,5,5),
29=>array(0,29,30,29,29,30,29,29,30,29,30,30,30,0,6,6),
30=>array(6,29,30,30,29,29,30,29,29,30,29,30,30,29,7,7),
31=>array(0,30,30,29,30,29,30,29,29,30,29,30,29,0,8,8),
32=>array(0,30,30,30,29,30,29,30,29,29,30,29,30,0,9,9),
33=>array(5,29,30,30,29,30,30,29,30,29,30,29,29,30,10,10),
34=>array(0,29,30,29,30,30,29,30,29,30,30,29,30,0,1,11),
35=>array(0,29,29,30,29,30,29,30,30,29,30,30,29,0,2,12),
36=>array(3,30,29,29,30,29,29,30,30,29,30,30,30,29,3,1),
37=>array(0,30,29,29,30,29,29,30,29,30,30,30,29,0,4,2),
38=>array(7,30,30,29,29,30,29,29,30,29,30,30,29,30,5,3),
39=>array(0,30,30,29,29,30,29,29,30,29,30,29,30,0,6,4),
40=>array(0,30,30,29,30,29,30,29,29,30,29,30,29,0,7,5),
41=>array(6,30,30,29,30,30,29,30,29,29,30,29,30,29,8,6),
42=>array(0,30,29,30,30,29,30,29,30,29,30,29,30,0,9,7),
43=>array(0,29,30,29,30,29,30,30,29,30,29,30,29,0,10,8),
44=>array(4,30,29,30,29,30,29,30,29,30,30,29,30,30,1,9),
45=>array(0,29,29,30,29,29,30,29,30,30,30,29,30,0,2,10),
46=>array(0,30,29,29,30,29,29,30,29,30,30,29,30,0,3,11),
47=>array(2,30,30,29,29,30,29,29,30,29,30,29,30,30,4,12),
48=>array(0,30,29,30,29,30,29,29,30,29,30,29,30,0,5,1),
49=>array(7,30,29,30,30,29,30,29,29,30,29,30,29,30,6,2),
50=>array(0,29,30,30,29,30,30,29,29,30,29,30,29,0,7,3),
51=>array(0,30,29,30,30,29,30,29,30,29,30,29,30,0,8,4),
52=>array(5,29,30,29,30,29,30,29,30,30,29,30,29,30,9,5),
53=>array(0,29,30,29,29,30,30,29,30,30,29,30,29,0,10,6),
54=>array(0,30,29,30,29,29,30,29,30,30,29,30,30,0,1,7),
55=>array(3,29,30,29,30,29,29,30,29,30,29,30,30,30,2,8),
56=>array(0,29,30,29,30,29,29,30,29,30,29,30,30,0,3,9),
57=>array(8,30,29,30,29,30,29,29,30,29,30,29,30,29,4,10),
58=>array(0,30,30,30,29,30,29,29,30,29,30,29,30,0,5,11),
59=>array(0,29,30,30,29,30,29,30,29,30,29,30,29,0,6,12),
60=>array(6,30,29,30,29,30,30,29,30,29,30,29,30,29,7,1),
61=>array(0,30,29,30,29,30,29,30,30,29,30,29,30,0,8,2),
62=>array(0,29,30,29,29,30,29,30,30,29,30,30,29,0,9,3),
63=>array(4,30,29,30,29,29,30,29,30,29,30,30,30,29,10,4),
64=>array(0,30,29,30,29,29,30,29,30,29,30,30,30,0,1,5),
65=>array(0,29,30,29,30,29,29,30,29,29,30,30,29,0,2,6),
66=>array(3,30,30,30,29,30,29,29,30,29,29,30,30,29,3,7),
67=>array(0,30,30,29,30,30,29,29,30,29,30,29,30,0,4,8),
68=>array(7,29,30,29,30,30,29,30,29,30,29,30,29,30,5,9),
69=>array(0,29,30,29,30,29,30,30,29,30,29,30,29,0,6,10),
70=>array(0,30,29,29,30,29,30,30,29,30,30,29,30,0,7,11),
71=>array(5,29,30,29,29,30,29,30,29,30,30,30,29,30,8,12),
72=>array(0,29,30,29,29,30,29,30,29,30,30,29,30,0,9,1),
73=>array(0,30,29,30,29,29,30,29,29,30,30,29,30,0,10,2),
74=>array(4,30,30,29,30,29,29,30,29,29,30,30,29,30,1,3),
75=>array(0,30,30,29,30,29,29,30,29,29,30,29,30,0,2,4),
76=>array(8,30,30,29,30,29,30,29,30,29,29,30,29,30,3,5),
77=>array(0,30,29,30,30,29,30,29,30,29,30,29,29,0,4,6),
78=>array(0,30,29,30,30,29,30,30,29,30,29,30,29,0,5,7),
79=>array(6,30,29,29,30,29,30,30,29,30,30,29,30,29,6,8),
80=>array(0,30,29,29,30,29,30,29,30,30,29,30,30,0,7,9),
81=>array(0,29,30,29,29,30,29,29,30,30,29,30,30,0,8,10),
82=>array(4,30,29,30,29,29,30,29,29,30,29,30,30,30,9,11),
83=>array(0,30,29,30,29,29,30,29,29,30,29,30,30,0,10,12),
84=>array(10,30,29,30,30,29,29,30,29,29,30,29,30,30,1,1),
85=>array(0,29,30,30,29,30,29,30,29,29,30,29,30,0,2,2),
86=>array(0,29,30,30,29,30,30,29,30,29,30,29,29,0,3,3),
87=>array(6,30,29,30,29,30,30,29,30,30,29,30,29,29,4,4),
88=>array(0,30,29,30,29,30,29,30,30,29,30,30,29,0,5,5),
89=>array(0,30,29,29,30,29,29,30,30,29,30,30,30,0,6,6),
90=>array(5,29,30,29,29,30,29,29,30,29,30,30,30,30,7,7),
91=>array(0,29,30,29,29,30,29,29,30,29,30,30,30,0,8,8),
92=>array(0,29,30,30,29,29,30,29,29,30,29,30,30,0,9,9),
93=>array(3,29,30,30,29,30,29,30,29,29,30,29,30,29,10,10),
94=>array(0,30,30,30,29,30,29,30,29,29,30,29,30,0,1,11),
95=>array(8,29,30,30,29,30,29,30,30,29,29,30,29,30,2,12),
96=>array(0,29,30,29,30,30,29,30,29,30,30,29,29,0,3,1),
97=>array(0,30,29,30,29,30,29,30,30,29,30,30,29,0,4,2),
98=>array(5,30,29,29,30,29,29,30,30,29,30,30,29,30,5,3),
99=>array(0,30,29,29,30,29,29,30,29,30,30,30,29,0,6,4),
100=>array(0,30,30,29,29,30,29,29,30,29,30,30,29,0,7,5),
101=>array(4,30,30,29,30,29,30,29,29,30,29,30,29,30,8,6),
102=>array(0,30,30,29,30,29,30,29,29,30,29,30,29,0,9,7),
103=>array(0,30,30,29,30,30,29,30,29,29,30,29,30,0,10,8),
104=>array(2,29,30,29,30,30,29,30,29,30,29,30,29,30,1,9),
105=>array(0,29,30,29,30,29,30,30,29,30,29,30,29,0,2,10),
106=>array(7,30,29,30,29,30,29,30,29,30,30,29,30,30,3,11),
107=>array(0,29,29,30,29,29,30,29,30,30,30,29,30,0,4,12),
108=>array(0,30,29,29,30,29,29,30,29,30,30,29,30,0,5,1),
109=>array(5,30,30,29,29,30,29,29,30,29,30,29,30,30,6,2),
110=>array(0,30,29,30,29,30,29,29,30,29,30,29,30,0,7,3),
111=>array(0,30,29,30,30,29,30,29,29,30,29,30,29,0,8,4),
112=>array(4,30,29,30,30,29,30,29,30,29,30,29,30,29,9,5),
113=>array(0,30,29,30,29,30,30,29,30,29,30,29,30,0,10,6),
114=>array(9,29,30,29,30,29,30,29,30,30,29,30,29,30,1,7),
115=>array(0,29,30,29,29,30,29,30,30,30,29,30,29,0,2,8),
116=>array(0,30,29,30,29,29,30,29,30,30,29,30,30,0,3,9),
117=>array(6,29,30,29,30,29,29,30,29,30,29,30,30,30,4,10),
118=>array(0,29,30,29,30,29,29,30,29,30,29,30,30,0,5,11),
119=>array(0,30,29,30,29,30,29,29,30,29,29,30,30,0,6,12),
120=>array(4,29,30,30,30,29,30,29,29,30,29,30,29,30,7,1)
);
##############################
#农历天干
$mten=array("null","甲","乙","丙","丁","戊","己","庚","辛","壬","癸");
#农历地支
$mtwelve=array("null","子(鼠)","丑(牛)","寅(虎)","卯(兔)","辰(龙)",
"巳(蛇)","午(马)","未(羊)","申(猴)","酉(鸡)","戌(狗)","亥(猪)");
#农历月份
$mmonth=array("闰","正","二","三","四","五","六",
"七","八","九","十","十一","十二","月");
#农历日
$mday=array("null","初一","初二","初三","初四","初五","初六","初七","初八","初九","初十",
"十一","十二","十三","十四","十五","十六","十七","十八","十九","二十",
"廿一","廿二","廿三","廿四","廿五","廿六","廿七","廿八","廿九","三十");
##############################
#赋给初值
#天干地支
$ten=0;
$twelve=0;
#星期
$week=5;
#农历日
$md=0;
#农历月
$mm=0;
#阳历总天数至1900年12月21日
$total=11;
#阴历总天数
$mtotal=0;
##############################
#获得当日日期
$today=getdate();
#如果没有输入,设为当日日期
if($year==""or$month==""or($year<1901or$year>2020)
or($month<1or$month>12)){
$year=$today[year];
$month=$today[mon];
}
##############################
#计算到所求日期阳历的总天数-自1900年12月21日始
#先算年的和
for($y=1901;$y<$year;$y++){
$total+=365;
if($y%4==0)$total++;
}
#再加当年的几个月
switch($month){
case12:
$total+=30;
case11:
$total+=31;
case10:
$total+=30;
case9:
$total+=31;
case8:
$total+=31;
case7:
$total+=30;
case6:
$total+=31;
case5:
$total+=30;
case4:
$total+=31;
case3:
$total+=28;
case2:
$total+=31;
}
#如果当年是闰年还要加一天
if($year%4==0and$month>2){
$total++;
}
#顺便算出当月1日星期几
$week=($total+$week)%7;
##############################
#用农历的天数累加来判断是否超过阳历的天数
$flag1=0;#判断跳出循环的条件
$j=0;
while($j<=120){
$i=1;
while($i<=13){
$mtotal+=$everymonth[$j][$i];
if($mtotal>=$total){
$flag1=1;
break;
}
$i++;
}
if($flag1==1)break;
$j++;
}
##############################
#计算所求月份1号的农历日期
$md=$everymonth[$j][$i]-($mtotal-$total);
#月头空开的天数
$k=$week;
#是否跨越一年
switch($month){
case1:
case3:
case5:
case7:
case8:
case10:
case12:
$dd=31;
break;
case4:
case6:
case9:
case11:
$dd=30;
break;
case2:
if($year%4==0){
$dd=29;
}else{
$dd=28;
}
break;
}
#是否跨越一年
$ty=0;
if((($everymonth[$j][0]<>0and$i==13)or($everymonth[$j][0]==0and$i==12))
and$mtotal-$total<$dd)$ty=1;
?>
<html>
<head>
<title>世纪万年历</title>
<styletype="text/css">
<!--
input{font-size:9pt;}
A:link{text-decoration:underline;font-size:9pt;color:000059}
A:visited{text-decoration:underline;font-size:9pt;color:000059}
A:active{text-decoration:none;font-size:9pt}
A:hover{text-decoration:underline;color:red}
body,table{font-size:9pt}
tr,td{font-size:9pt}
-->
</style>
</head>
<bodyalink="#FF0000"link="#000099"vlink="#CC6600"topmargin="8"leftmargin="0"bgColor="#FFFFFF">
<?
//打印年月抬头
echo"<palign=\"center\"><fontsize=\"6\"><b>".$year."年".$month."月</b></font></p>\n";
if($ty==0)
{
echo"<palign=\"center\"><b><fontsize=\"4\">".$mten[$everymonth[$j][14]].$mtwelve[$everymonth[$j][15]]."年</font></b></p>";
}
else
{
echo"<palign=\"center\"><b><fontsize=\"4\">".$mten[$everymonth[$j][14]].$mtwelve[$everymonth[$j][15]]."/".$mten[$everymonth[$j+1][14]].$mtwelve[$everymonth[$j+1][15]]."年</font></b></p>";
}
?>
<divalign="center">
<center>
<tableborder="1"width="85%">
<tr>
<tdalign="center"bgcolor="#CCCCCC"><fontcolor="#FF0000"><b>星期日</b></font></td>
<tdwidth="14%"align="center"bgcolor="#CCCCCC"><b>星期一</b></td>
<tdwidth="14%"align="center"bgcolor="#CCCCCC"><b>星期二</b></td>
<tdwidth="14%"align="center"bgcolor="#CCCCCC"><b>星期三</b></td>
<tdwidth="14%"align="center"bgcolor="#CCCCCC"><b>星期四</b></td>
<tdwidth="14%"align="center"bgcolor="#CCCCCC"><b>星期五</b></td>
<tdwidth="14%"align="center"bgcolor="#CCCCCC"><b>星期六</b></td>
</tr>
<?
$day=1;
$line=0;
while($day<=$dd){
echo"<tr>\n";
for($s=0;$s<=6;$s++){
if($k<>0or$day>$dd){
echo"<tdwidth=\"14%\"align=\"center\"> </td>\n";
$k--;
}else{
//设置字符颜色
switch($s){
case1:
case2:
case3:
case4:
case5:
$color="#000000";
break;
case0:
$color="#FF0000";
break;
case6:
$color="#008000";
break;
}
#生成中文农历
if($md==1){#1日打印月份
if($everymonth[$j][0]<>0and$everymonth[$j][0]<$i){
$mm=$i-1;
}else{
$mm=$i;
}
if($i==$everymonth[$j][0]+1and$everymonth[$j][0]<>0)$chi=$mmonth[0].$mmonth[$mm];#闰月
else$chi=$mmonth[$mm].$mmonth[13];
}else{
$chi=$mday[$md];
}
echo"<tdwidth=\"14%\"align=\"center\"><fontcolor=\"$color\"><b>$day</b><b><fontsize=\"2\">$chi</font></b></font></td>\n";
$day++;
$md++;
if($md>$everymonth[$j][$i]){
$md=1;
$i++;
}
if(($i>12and$everymonth[$j][0]==0)or($i>13and$everymonth[$j][0]<>0)){
$i=1;
$j++;
}
}
}
echo"</tr>\n";
$line++;
}
?>
</table>
</center>
</div>
<?php
#补足空行
for($l=1;$l<=(6-$line);$l++){
echo"<tableborder=\"0\"width=\"100%\">\n";
echo"<tr>\n";
echo"<tdwidth=\"100%\"><fontcolor=\"#CCFFFF\">a</font></td>\n";
echo"</tr>\n";
echo"</table>\n";
}
#打印上一月,下一月
$ly=$ny=$year;
$last=$month-1;
if($last==0){
$last=12;
$ly--;
}
$next=$month+1;
if($next==13){
$next=1;
$ny++;
}
if($ly>=1901)
echo"<palign=\"center\"><ahref=\"".$file."?year=".$ly."&month=".$last."\"><<上一个月</a> \n";
else
echo"<palign=\"center\">";
if($ny<=2020)
echo"<ahref=\"".$file."?year=".$ny."&month=".$next."\">下一个月>></a></p>\n";
?>
<?php
echo"<formmethod=\"POST\"action=\"".$file."\">\n";
?>
<palign="center"><fontcolor="#000000">年份:</font><selectsize="1"name="year">
<option>2020</option>
<option>2019</option>
<option>2018</option>
<option>2017</option>
<option>2016</option>
<option>2015</option>
<option>2014</option>
<option>2013</option>
<option>2012</option>
<option>2011</option>
<option>2010</option>
<option>2009</option>
<option>2008</option>
<option>2007</option>
<option>2006</option>
<option>2005</option>
<option>2004</option>
<option>2003</option>
<option>2002</option>
<option>2001</option>
<optionselected>2000</option>
<option>1999</option>
<option>1998</option>
<option>1997</option>
<option>1996</option>
<option>1995</option>
<option>1994</option>
<option>1993</option>
<option>1992</option>
<option>1991</option>
<option>1990</option>
<option>1989</option>
<option>1988</option>
<option>1987</option>
<option>1986</option>
<option>1985</option>
<option>1984</option>
<option>1983</option>
<option>1982</option>
<option>1981</option>
<option>1980</option>
<option>1979</option>
<option>1978</option>
<option>1977</option>
<option>1976</option>
<option>1975</option>
<option>1974</option>
<option>1973</option>
<option>1972</option>
<option>1971</option>
<option>1970</option>
<option>1969</option>
<option>1968</option>
<option>1967</option>
<option>1966</option>
<option>1965</option>
<option>1964</option>
<option>1963</option>
<option>1962</option>
<option>1961</option>
<option>1960</option>
<option>1959</option>
<option>1958</option>
<option>1957</option>
<option>1956</option>
<option>1955</option>
<option>1954</option>
<option>1953</option>
<option>1952</option>
<option>1951</option>
<option>1950</option>
<option>1949</option>
<option>1948</option>
<option>1947</option>
<option>1946</option>
<option>1945</option>
<option>1944</option>
<option>1943</option>
<option>1942</option>
<option>1941</option>
<option>1940</option>
<option>1939</option>
<option>1938</option>
<option>1937</option>
<option>1936</option>
<option>1935</option>
<option>1934</option>
<option>1933</option>
<option>1932</option>
<option>1931</option>
<option>1930</option>
<option>1929</option>
<option>1928</option>
<option>1927</option>
<option>1926</option>
<option>1925</option>
<option>1924</option>
<option>1923</option>
<option>1922</option>
<option>1921</option>
<option>1920</option>
<option>1919</option>
<option>1918</option>
<option>1917</option>
<option>1916</option>
<option>1915</option>
<option>1914</option>
<option>1913</option>
<option>1912</option>
<option>1911</option>
<option>1910</option>
<option>1909</option>
<option>1908</option>
<option>1907</option>
<option>1906</option>
<option>1905</option>
<option>1904</option>
<option>1903</option>
<option>1902</option>
<option>1901</option>
</select><fontcolor="#000000">年</font><fontcolor="#000000">
月份:<selectsize="1"name="month">
<optionselected>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
<option>11</option>
<option>12</option>
</select>月 </font><inputtype="submit"value="查询"name="B1"></p>
</form>
</body>
</html>
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
一般的电子万年历表都是挂在墙上的,如果环境潮湿的话,很可能会造成电子万年历的电路板轻微漏电,漏电以后电子万年历虽然可以走时,但是却失去了准确性。最简单的方法就是
万年历调时间的方法是: 1、万年历后面有四个键分别为上调、下调、设置、退回,先按“设置”键进入时间设置状态,同时年份“闪烁”,可按“上调”或“下调”键修改年份
本文实例为大家分享了C++实现简易的万年历,供大家参考,具体内容如下代码如下:/**文件名称:万年历.cpp*作者:chenghan*完成日期:2019/1/1
本文实例为大家分享了C++实现万年历的具体代码,供大家参考,具体内容如下用C++写了个简易的万年历。具体功能如下:1.打印指定年(用户输入)所有月份的年历2.打
各位使用中华万年历的伙伴们,知道在其中如何查看星座吗?不知道的话可以随着小编去下面文章中看看中华万年历中查看星座的操作方法。 1.打开软件,点击页面右下角生