这篇文章给大家聊聊关于php获取服务器时间,以及PHP如何获取本地时间与服务器时间对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
一、PHP如何获取本地时间与服务器时间
PHP获取服务器时间和本地时间很简单,可以用内置函数实现,具体代码如下:
记得给分!!!
<?php
//获取服务器时间
echodate("Y-m-dh:i:s");
//获取本地时间(也可以说是你所在时区时间)
date_default_timezone_set('地区');//地区:中国是PRC,或shanghai,chongqing都可
echodate("Y-m-dh:i:s");
?>
当然获取本地时间还可以用JS实现,如下:
<scripttype="text/j*ascript">
functionshowLocale(objD){
varstr,colorhead,colorfoot;
varyy=objD.getYear();
if(yy<1900)yy=yy+1900;
varMM=objD.getMonth()+1;
if(MM<10)MM='0'+MM;
vardd=objD.getDate();
if(dd<10)dd='0'+dd;
varhh=objD.getHours();
if(hh<10)hh='0'+hh;
varmm=objD.getMinutes();
if(mm<10)mm='0'+mm;
varss=objD.getSeconds();
if(ss<10)ss='0'+ss;
varww=objD.getDay();
if(ww==0)colorhead="<fontcolor=\"#000000\">";
if(ww>0&&ww<6)colorhead="<fontcolor=\"#000000\">";
if(ww==6)colorhead="<fontcolor=\"#000000\">";
if(ww==0)ww="星期日";
if(ww==1)ww="星期一";
if(ww==2)ww="星期二";
if(ww==3)ww="星期三";
if(ww==4)ww="星期四";
if(ww==5)ww="星期五";
if(ww==6)ww="星期六";
colorfoot="</font>"
str=colorhead+yy+"-"+MM+"-"+dd+""+hh+":"+mm+":"+ss+""+ww+colorfoot;
return(str);
}
functiontick(){
vartoday;
today=newDate();
document.getElementById("localtime").innerHTML=showLocale(today);
window.setTimeout("tick()",1000);
}
tick();
</script>
二、php 如何获取服务器的信息
服务器变量$_SERVER详解:
1、$_SESSION['PHP_SELF']—获取当前正在执行脚本的文件名
2、$_SERVER['SERVER_PROTOCOL']—请求页面时通信协议的名称和版本。例如,“HTTP/1.0”。
3、$_SERVER['REQUEST_TIME']—请求开始时的时间戳。从 PHP 5.1.0起有效。和time函数效果一样。
4、$_SERVER['argv']—传递给该脚本的参数。我试了下,get方法可以得到$_SERVER['argv'][0];post方法无法给他赋值。
5、$_SERVER['SERVER_NAME']—返回当前主机名。
6、$_SERVER['SERVER_SOFTWARE']—服务器标识的字串,在响应请求时的头信息中给出。如Microsoft-IIS/6.0
7、$_SERVER['REQUEST_METHOD']—访问页面时的请求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。
8、$_SERVER['QUERY_STRING']—查询(query)的字符串(URL中第一个问号?之后的内容)。
9、$_SERVER['DOCUMENT_ROOT']—当前运行脚本所在的文档根目录。在服务器配置文件中定义。如E:\server
10、$_SERVER['HTTP_ACCEPT']—当前请求的 Aept:头信息的内容。
11、$_SERVER['HTTP_ACCEPT_CHARSET']—当前请求的 Aept-Charset:头信息的内容。例如:“iso-8859-1,*,utf-8”。
12、$_SERVER['HTTP_ACCEPT_ENCODING']—当前请求的 Aept-Encoding:头信息的内容。例如:“gzip”。
13、$_SERVER['HTTP_ACCEPT_LANGUAGE']—当前请求的 Aept-Language:头信息的内容。例如:“en”。
14、$_SERVER['HTTP_CONNECTION']—当前请求的 Connection:头信息的内容。例如:“Keep-Alive”。
15、$_SERVER['HTTP_HOST']—当前请求的 Host:头信息的内容。
16、$_SERVER['HTTP_REFERER']—到当前页面的前一页面的 URL。
17、$_SERVER['HTTP_USER_AGENT']—返回用户使用的浏览器信息。也可以使用 get_browser()得到此信息。
18、$_SERVER['HTTPS']—如果通过s访问,则被设为一个非空的值,否则返回off.
19、$_SERVER['REMOTE_ADDR']—正在浏览当前页面用户的 IP。
20、$_SERVER['REMOTE_HOST']—正在浏览当前页面用户的主机名。反向域名解析基于该用户的 REMOTE_ADDR。如本地测试返回127.0.0.1
21、$_SERVER['REMOTE_PORT']—用户连接到服务器时所使用的端口。我在本机测试没通过,不知道什么原因。
22、$_SERVER['SCRIPT_FILENAME']—当前执行脚本的绝对路径名。如返回E:\server\index.php
23、$_SERVER['SERVER_ADMIN']—该值指明了 Apache服务器配置文件中的 SERVER_ADMIN参数。如果脚本运行在一个虚拟主机上,则该值是那个虚拟主机的值
24、$_SERVER['SERVER_PORT']—服务器所使用的端口。默认为“80”。如果使用 SSL安全连接,则这个值为用户设置的 HTTP端口。
25、$_SERVER['SERVER_SIGNATURE']—包含服务器版本和虚拟主机名的字符串。
26、$_SERVER['PATH_TRANSLATED']—当前脚本所在文件系统(不是文档根目录)的基本路径。这是在服务器进行虚拟到真实路径的映像后的结果。 Apache 2用户可以使用 d.conf中的 AeptPathInfo On来定义 PATH_INFO。
27、$_SERVER['SCRIPT_NAME']—包含当前脚本的路径。这在页面需要指向自己时非常有用。__FILE__包含当前文件的绝对路径和文件名(例如包含文件)。
28、$_SERVER['REQUEST_URI']—访问此页面所需的 URI。例如,“/index.html”。
29、$_SERVER['PHP_AUTH_DIGEST']—当作为 Apache模块运行时,进行 HTTP Digest认证的过程中,此变量被设置成客户端发送的“Authorization”HTTP头内容(以便作进一步的认证操作)。
30、$_SERVER['PHP_AUTH_USER']–当 PHP运行在 Apache或 IIS(PHP 5是 ISAPI)模块方式下,并且正在使用 HTTP认证功能,这个变量便是用户输入的用户名。
31、$_SERVER['PHP_AUTH_PW']—当 PHP运行在 Apache或 IIS(PHP 5是 ISAPI)模块方式下,并且正在使用 HTTP认证功能,这个变量便是用户输入的密码。
32、$_SERVER['AUTH_TYPE']–当 PHP运行在 Apache模块方式下,并且正在使用 HTTP认证功能,这个变量便是认证的类型。
三、html网页怎样获取服务器的时间
网页前端是无法获取到服务器时间的,只有通过后台取值然后进行传递。使用Ajax每秒获取服务器的时间并显示出来,但是服务器网络延迟较高,这样误差较大。
示例采用Head的方法处理,第一次页面加载时从服务器端获得时间,以这个时间为基准,客户端再用js每秒累加。
完整代理示例:
<html>
<head>
<title>html网页获取服务器的时间</title>
<scriptlanguage="J*aScript"type="text/j*ascript">
<!--程序执行需要耗费时间,误差在2秒以下-->
varxmlHttp=false;
<!--获取服务器时间-->
try{
xmlHttp=newActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
xmlHttp=newActiveXObject("Microsoft.XMLHTTP");
}catch(e2){
xmlHttp=false;
}
}
if(!xmlHttp&&typeofXMLHttpRequest!='undefined'){
xmlHttp=newXMLHttpRequest();
}
xmlHttp.open("GET","
,false);
xmlHttp.setRequestHeader("Range","bytes=-1");
xmlHttp.send(null);
severtime=newDate(xmlHttp.getResponseHeader("Date"));
<!--获取服务器日期-->
varyear=severtime.getFullYear();
varmonth=severtime.getMonth()+1;
vardate=severtime.getDate();
<!--获取服务器时间-->
varhour=severtime.getHours();
varminu=severtime.getMinutes();
varseco=severtime.getSeconds();
<!--格式化输出服务器时间-->
functiongetSeverTime(){
seco++;
if(seco==60){
minu+=1;
seco=0;
}
if(minu==60){
hour+=1;
minu=0;
}
if(hour==24){
date+=1;
hour=0;
}
<!--日期处理-->
if(month==1||month==3||month==5||month==7
||month==8||month==10||month==12)
{
if(date==32)
{
date=1;
month+=1;
}
}elseif(month==4||month==6||month==9||month==11){
if(date==31){
date=1;
month+=1;
}
}elseif(month==2){
if(year%4==0&&year%100!=0){<!--闰年处理-->
if(date==29){
date=1;
month+=1;
}
}else{
if(date==28){
date=1;
month+=1;
}
}
}
if(month==13){
year+=1;
month=1;
}
sseco=addZero(seco);
sminu=addZero(minu);
shour=addZero(hour);
sdate=addZero(date);
smonth=addZero(month);
syear=year;
innerdata="当前服务器时间:";
document.getElementById("servertime").innerHTML=innerdata+syear+"-"+smonth+"-"+sdate+""+shour+":"+sminu+":"+sseco;
setTimeout("getSeverTime()",1000);
setTimeout("getClientTime()",100);
}
functionaddZero(num){
num=Math.floor(num);
return((num<=9)?("0"+num):num);
}
</script>
</head>
<bodyonLoad="getSeverTime();">
<pid="servertime"></p>
<pid="clienttime"></p>
<pid="xctime"></p>
</body>
</html>
【扩展】网页前端获取当前时间,调用date()函数即可。
示例代码:
<spanid="cg"></span>
<script>setInterval("cg.innerHTML=newDate().toLocaleString()",1000);</script>