大家知道,我们一般获取时间无论是time或者是data他只是获取服务器时间,这个没毛病,但是把时间更改了呢!so,整理了下获取中科院国家授时中心的时间(大家放心,很准的^_^),下面附上代码:
$weeks = array( 'Mon'=>'星期一', 'Tue'=>'星期二', 'Wed'=>'星期三', 'Thu'=>'星期四', 'Fri'=>'星期五', 'Sat'=>'星期六', 'Sun'=>'星期日');
$server = "www.ntsc.ac.cn"; //中科院国家授时中心
$date = "HEAD/HTTP/1.1\r\n"; //请求方式 版本
$date .= "Host:$server\r\n"; //域名
$date .= "Connection:Close\r\n\r\n"; //断开连接
$fp = fsockopen($server,80); // 打开一个网络连接
fputs($fp,$date); //函数写入文件 fwrite()别名
$resp = " ";while($fp && !feof($fp)) //输出文本中所有的行,直到文件结束为止
$resp .= fread($fp,1024); //函数读取文件,在文件中读取1024字节
preg_match('/^Date:(.*)$/mi',$resp,$matches);//第一个参数是正则表达式、第二个参数是 需要匹配检索的对象、第三个参数是存储匹配结果的数组
$w = explode(',',$matches[1]); //分割成数组
$week = $weeks[trim($w[0])]; //移除字符串两侧的字符
$time = date('Y-m-d H:i:s',strtotime($matches[1]));//将数组转成unix时间戳 然后格式化时间戳
return $time.' '.$week;
最后输出的是网络时间,这样大家就不用担心更改服务器时间的问题了。