//世纪万年历

#这是唯一的设置-请输入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<1901 or $year>2020)

or ($month<1 or $month>12)){

$year=$today[year];

$month=$today[mon];

}

##############################

#计算到所求日期阳历的总天数-自1900年12月21日始

#先算年的和

for ($y=1901;$y $total+=365;

if ($y%4==0) $total ++;

}

#再加当年的几个月

switch ($month){

case 12:

$total+=30;

case 11:

$total+=31;

case 10:

$total+=30;

case 9:

$total+=31;

case 8:

$total+=31;

case 7:

$total+=30;

case 6:

$total+=31;

case 5:

$total+=30;

case 4:

$total+=31;

case 3:

$total+=28;

case 2:

$total+=31;

}

#如果当年是闰年还要加一天

if ($year%4==0 and $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){

case 1:

case 3:

case 5:

case 7:

case 8:

case 10:

case 12:

$dd=31;

break;

case 4:

case 6:

case 9:

case 11:

$dd=30;

break;

case 2:

if ($year%4==0){

$dd=29;

}else{

$dd=28;

}

break;

}

#是否跨越一年

$ty=0;

if ((($everymonth[$j][0]<>0 and $i==13) or ($everymonth[$j][0]==0 and $i==12))

and $mtotal-$total?>

世纪万年历

//打印年月抬头

echo "

".$year."年".$month."月\n";

if($ty==0)

{

echo "

".$mten[$everymonth[$j][14]].$mtwelve[$everymonth[$j][15]]."年";

}

else

{

echo "

".$mten[$everymonth[$j][14]].$mtwelve[$everymonth[$j][15]]."/".$mten[$everymonth[$j+1][14]].$mtwelve[$everymonth[$j+1][15]]."年";

}

?>

星期日

星期一

星期二

星期三

星期四

星期五

星期六

$day=1;

$line=0;

while ($day<=$dd){

echo "

\n";

for ($s=0;$s<=6;$s++){

if ($k<>0 or $day>$dd){

echo "\n";

$k--;

}else{

//设置字符颜色

switch ($s){

case 1:

case 2:

case 3:

case 4:

case 5:

$color="#000000";

break;

case 0:

$color="#FF0000";

break;

case 6:

$color="#008000";

break;

}

#生成中文农历

if ($md==1){#1日打印月份

if ($everymonth[$j][0]<>0 and $everymonth[$j][0] $mm=$i-1;

}else{

$mm=$i;

}

if ($i==$everymonth[$j][0]+1 and $everymonth[$j][0]<>0) $chi=$mmonth[0].$mmonth[$mm];#闰月

else $chi=$mmonth[$mm].$mmonth[13];

}else{

$chi=$mday[$md];

}

echo "$day $chi\n";

$day++;

$md++;

if ($md>$everymonth[$j][$i]){

$md=1;

$i++;

}

if (($i>12 and $everymonth[$j][0]==0) or ($i>13 and $everymonth[$j][0]<>0)){

$i=1;

$j++;

}

}

}

echo "\n";

$line++;

}

?>

\n";

echo "

\n";

echo "a\n";

echo "\n";

echo "\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 "

http://www.bkjia.com/PHPjc/317345.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/317345.htmlTechArticle? //世纪万年历 #这是唯一的设置-请输入php文件的位置 $file="http://192.168.1.168/php/rl/s2m.php"; //#农历每月的天数 $everymonth=array( 0=array(8,0,0,0,0,0,0...

PHP世纪年,[转帖]PHP世纪万年历_PHP教程相关推荐

  1. php discuz 顶,discuz模拟登录实现自动顶帖php程序_PHP教程

    在php 模仿登录我们需要使用curl_init函数,下面我来介绍利用 curl 模拟 post 登录discuz论坛并且实现自动顶帖功能. 其实模拟登录就那点事,无法就是获得相应的参数,然后模拟发送 ...

  2. php制作万年历的步骤_PHP制作万年历_php实例

    使用PHP实现万年历功能的要点: 得到当前要处理的月份总共有多少天$days 得到当前要处理的月份的一号是星期几$dayofweek $days的作用:知道要处理的月份共有多少天,就可以通过循环输出天 ...

  3. 【转帖】绝版破解软件教程就不信你学不会!!

    绝版破解软件教程就不信你学不会!! www.hxhack.com 阅读: <script src="/Article/GetHits.asp?ArticleID=1191"& ...

  4. 基于单片机的电子钟/万年历系统设计教程(#0418)

    随着科技的快速发展,时间的流逝从观太阳.摆钟到现在电子钟,人类不断研究,不断创新纪录. 功能描述 1.采用51单片机作为主控芯片: 2.采用LCD1602作为显示模块: 3.具有年.月.日.时.分.秒 ...

  5. 新世纪英语综合教程4(第二版)单元课后选词填空汇总

    链接:https://pan.baidu.com/s/1QLXUCgMWxlBRN0cqID_JKg 提取码:i4i2

  6. php用script判断闰年,php判断/计算闰年的方法小结【三种方法】

    本文实例讲述了php判断/计算闰年的方法.分享给大家供大家参考,具体如下: 1.php闰年计算方法一: ①.普通年能被4整除而不能被100整除的为闰年.(如2004年就是闰年,1900年不是闰年) ② ...

  7. 判断闰年 php,PHP怎么判断一年是否为闰年?

    判断是否为闰年的条件是满足下列二者条件之一:年号能被4整除.但不能被100整除,二是年号能被4整除,又能被400整除.那么PHP怎么判断一年是否为闰年?下面本篇文章就来给大家介绍一下使用PHP判断一年 ...

  8. php判断某年是不是闰年,PHP怎么判断一年是否为闰年?

    判断是否为闰年的条件是满足下列二者条件之一:年号能被4整除.但不能被100整除,二是年号能被4整除,又能被400整除.那么PHP怎么判断一年是否为闰年?下面本篇文章就来给大家介绍一下使用PHP判断一年 ...

  9. php某年某月某日是否闰年,【后端开发】PHP判断一个年份是否为闰年

    判断闰年:(推荐学习:PHP编程从入门到精通) ①.普通年能被4整除而不能被100整除的为闰年.(如2004年就是闰年,1900年不是闰年) ②.世纪年能被400整除而不能被3200整除的为闰年.(如 ...

最新文章

  1. python代码创建数据库_如何使用python ORM创建数据库表?
  2. ActiveMQ消息队列的使用及应用
  3. Android——Intent动作汇总(转)
  4. matlab vdp1000,第四章 MATLAB的数学运算.ppt
  5. 在dreamweaver mx中它只能对html文件可以进行编辑,【职称计算机考试网页制作历年试题及答案二】- 环球网校...
  6. superset数据集birth_names的负时间戳处理
  7. 获取application server 主机名(host name)和端口号(port)的FM TH_GET_VIRT_HOST_DATA
  8. 通讯可以并联吗_工业控制知识:吃透RS485通讯的连接方式,接485总线就简单多了...
  9. js插值法的使用_js 实现排序算法 -- 插入排序(Insertion Sort)
  10. 开博1个月不到,照样可以申请到text-link-ads
  11. Java 1.2.2 格式化输出
  12. python用来自动修改pdf_python实现从pdf文件中提取文本,并自动翻译的方法
  13. 怎样制作动图gif?GIF生成器帮你一键制作gif
  14. WinCC7.3 Win764位系统安装教程
  15. 计算机编程及常用术语英语词汇大全
  16. python写法教程_Python的表达式写法
  17. 计算机信息检索 02139
  18. 学习笔记4--自动驾驶汽车感知系统
  19. 三阶魔方层先法自动复原_Python
  20. 常微分齐次方程的规范化通解

热门文章

  1. Jenkins 中基于角色的权限管理
  2. 多边形内部两两连线最多分出的区域数公式
  3. QQ上线新功能,微信用户要羡慕哭了!
  4. 光纤接口卡学习资料第705篇:基于PCIe的24路光纤接口卡
  5. 【OpenBCI】(2):原始数据包解码
  6. 台式计算机操作系统,电脑型号 X64 兼容 台式电脑 操作系统 Windows 7 旗舰版 精简版 64位 SP1 ( DirectX 11 )...
  7. 助力全球近百万人同时观看 LOL S7 直播,阿里云是怎么做到的?
  8. 应用商店调研-百度手机助手
  9. 儿时数学课上的“百钱百鸡”问题我又捡起来了
  10. 水库水雨情自动测报系统功能