Php实现实时时间

来源:互联网 发布:淘宝床单四件套 编辑:程序博客网 时间:2024/04/30 14:33
这是个古老话题了,但也有好多超新手问过,所以我写上.

这种方法实现的好处是:服务器端时间,不会因客户端时间改变影外观.

>>> time.php 源代码如下:
[这里是改进版,原2003年发布的已清除,本版是作测试专用]
<body>
<script language="JavaScript">
<!--
document.write('<div id="Today"></div>');
var a=0;
var Y=<?echo date('Y')?>,M=<?echo date('n')?>,D=<?echo date('j')?>;
function clock() {
sec=<?echo strtotime('8 hours')?>+a; //(GMT+8:00)时区:中国标准时间
S=sec%60; //秒
I=Math.floor(sec/60)%60; //分
H=Math.floor(sec/3600)%24; //时
W='四五六日一二三'.charAt(Math.floor(sec/86400)%7); //星期几
if(S<10) S='0'+S;
if(I<10) I='0'+I;
if(H<10) H='0'+H;
if (H=='00' & I=='00' & S=='00') D=D+1; //日进位
if (M==2) { //判断是否为二月份******
if (!Y%4>0) { //是闰年(二月有28天)
if (D==30){M+=1;D=1;} //月份进位
}
else { //非闰年(二月有29天)
if (D==29){M+=1;D=1;} //月份进位
}
}
else { //不是二月份的月份******
if (M==4 || M==6 || M==9 || M==11) { //小月(30天)
if (D==31) {M+=1;D=1;} //月份进位
}
else { //大月(31天)
if (D==32){M+=1;D=1;} //月份进位
}
}
if (M==13) {Y+=1;M=1;} //年份进位
timeStr=Y+'年'+M+'月'+D+'日'+' 星期'+W+' '+H+':'+I+':'+S;
Today.innerHTML = timeStr;
a++;
}
clock(); //这行可以不要,只为初始化...
setInterval(clock,1000);
//-->
//判断闰年的规则是,能被4整除,但能被100整除的不是闰年,能被400整除为闰年.
//像1600、2000、2400年都是闰年,而1700、1800、1900、2100年都是平年(非闰年)
//PHP目前只能处理1970-2038年的时间段,所以在这不用理会100及400的这整除事件
</script>
</body>