如何在自己的服务器搭建获取北京时间的服务

  • A+

加入VIP,可以享受无广告视频播放!更可享受教程提前看!详情猛戳:VIP介绍

新VIP系统上线大酬宾!最高150-200元优惠!详情猛戳:新VIP系统上线

有的时候,需要校准本地时间的时候,或者自己写的软件需要一个北京时间的时候,我们通常都需要联网去找一些提供这些服务的网站。以前百度就有提供类似的服务,但经年累月,好些服务都物是人非了。

之前在维护精易模块的时候,也是想弄一个提供即时北京时间的网站,结果找的那个网站却遇到了在一定的时间内重复获取不会更新的尴尬。因此那个时间获取不是即时的。

所以我也考虑一下有没有办法能在自己的服务器弄一个提供北京时间的服务。

最后,咱们有了如下的服务工具:

http://api.xueshanlinghu.com/checktime/

直接打开即可获取即时的北京时间。

它的原理就是php脚本即时获取服务器的时间,因此前提就是服务器的时间准确,首先定期同步服务器电脑的时间这是首要的。

然后就是php脚本的时区。咱们用的是php7版本,那么在php7的php.ini文件中,需要配置默认的时区。不配置的情况下,默认的时区是GMT时间的时区,如果你需要给你计算的是东八区的北京时间,有两种方法,一种是将php.ini文件中的date.timezone这一行前面的分号去掉,然后给它赋值PRC,指的就是中国时区,这样php脚本中的date函数和time函数获取到的就是北京时间了。

另一种方法就是不改时区,毕竟原始获取的是零时区,那在获取时间戳的时候,加上对应的时区秒数就可以了。比如默认为零时区,如果需要东八区,那么就需要在现有获取的时间戳上加上八小时对应的秒数8*60*60。这样也可以获取到正确的时间。

 

其他的就很简单了,在该站点下新建了一个目录,名叫“checktime”,然后目录下放一个index.php文件即可,访问目录,即可自动访问主页地址。

那么index.php文件的内容写一些什么呢?

如下:(使用utf8编码)

<?php
$time = time();
echo $time.'<br/>';
$datetime = date("Y-m-d H:i:s", $time);
echo $datetime.'<br/>';

 

打开页面后,第一行返回的是现行北京时间时间戳(10位,到秒)。

第二行返回的是转换为年月日时分秒后的北京时间。

获取到网页源码后,通过<br/>分割文本即可。