关于怎样解决PHP服务器时间不准的问题,得针对不同的情况进行不同的处理。

下面是经常遇到的情况,及应对办法。

1.PHP服务器时区不对,使用下面代码修正:

<?php
$timezone = "PRC";
if(function_exists('date_default_timezone_set')){
date_default_timezone_set($timezone);
}
echo date('d-m-Y H:i:s');
?>

或修改PHP.INI文件后重新启动IIS或APACHE服务器

date.timezone = RPC

2.PHP服务器的时间不对,不是时区,该问题解决方法如下:

方法一 如果你是管理员,直接去调整服务器的时间,只要服务器时间校正了,就没问题了。

方法二 如果没法修改服务器时间,又要PHP程序显示的时间正确,那得通过PHP代码来实现。具体过程如下:

在全局配置文件中,添加时间提前量。

$webdb['correctiontime'] = '-110';//把服务器时间减去110秒

书写时间显示函数:

//格式化时间为年月日
function day($time = '') {
global $webdb;
if (!$time) {
$time = time();
}
return date("Y/m/d",$time+$webdb[correctiontime]);
}
//格式化时间为年月日时分秒
function daytime($time = '') {
global $webdb;
if (!$time) {
$time = time();
}
return date("Y/m/d H:i:s",$time+$webdb[correctiontime]);
}
//格式化时间为[2012/06/30 18:24]
function dayshorttime($time = '') {
global $webdb;
if (!$time) {
$time = time();
}
return date("Y/m/d H:i",$time+$webdb[correctiontime]);
}

最后,在所有要显示PHP时间的地方,调用上面3个函数中的其中一个。

平时还是喜欢用最后一种方法,因为不能保证虚拟服务器的时间是完全准确的世界时间。

如果你有系统管理权限,那又另当别论。

转自:https://www.cnblogs.com/ccode/p/3905943.html

校正PHP服务器时间不准的问题的更多相关文章

  1. 使用ntpdate工具校正linux服务器时间

    当Linux服务器的时间不对的时候,可以使用ntpdate工具来校正时间. 安装:yum install ntpdate ntpdate简单用法: # ntpdate ip # ntpdate 210 ...

  2. 树莓派(Raspberry Pi)日期时间不准的修正方法

    在树莓派上,打date命令可以看到系统的日期时间: 后面的CST表示中国标准时间 小知识: 树莓派没有电池,断电后无法保存时间. 树莓派默认安装了NTP(Network Time Protocol)服 ...

  3. JavaScript or JQuery 获取服务器时间

    用js做时间校正,获取本机时间,是存在bug的. 使用js也可获取到服务器时间,原理是使用 ajax请求,返回的头部信息就含有服务器端的时间信息,获取到就可以了(有的IE下扔不会正常获取,还是更建议走 ...

  4. Linux的硬件时间、校正Linux系统时间及系统时间调用流程

    第一部分: 一)概述: 事实上在Linux中有两个时钟系统,分别是系统时间和硬件时间 UTC是协调世界时(Universal Time Coordinated)英文缩写,它比北京时间早8个小时.   ...

  5. 通过自定义特性,使用EF6拦截器完成创建人、创建时间、更新人、更新时间的统一赋值(使用数据库服务器时间赋值,接上一篇)

    目录: 前言 设计(完成扩展) 实现效果 扩展设计方案 扩展后代码结构 集思广益(问题) 前言: 在上一篇文章我写了如何重建IDbCommandTreeInterceptor来实现创建人.创建时间.更 ...

  6. javascript小技巧:同步服务器时间、同步倒计时

    之前在网上看到有人提问,如何在页面上同步显示服务器的时间,其实实现方法有几种,可能一般人立马就想到可以使用Ajax每隔一秒去请求服务器,然后将服务器获取到时间显示在页面上,这样虽然能够实现,但存在一个 ...

  7. JS根据服务器时间倒计时

    原文链接:http://caibaojian.com/daojishi-2.html //获取服务器时间 function getSevertime(){ var xmlHttp = new XMLH ...

  8. JS实现Ajax---例:获取服务器时间

    Ajax在本质上是一个浏览器端的技术 XMLHttpRequest XMLHttpRequest对象 XMLHttpRequest对象在IE浏览器和非IE浏览器中创建的方法不同. 简而言之:它可以异步 ...

  9. php获取服务器时间的代码

    php获取服务器时间的代码. 用php的date函数即可来获取服务器上的时间:  <?php //将时区设置为中国 date_default_timezone_set("PRC&quo ...

随机推荐

  1. Sonatype Nexus Repository Manager修改密码不成功

    nexus修改用户密码时出现Invalid authentication ticket 搜索一下,说会修改密码操作要在15秒内完成 ,于是快速操作,没想到真成功了

  2. CentOS安装Docker CE

    安装Docker CE(免费版) docker EE企业版您可以根据需要以不同方式安装Docker CE: 大多数用户 设置Docker的存储库并从中进行安装,以便于安装和升级任务.这是推荐的方法. ...

  3. cxImage控件使用

    属性: Picture:载入要显示的图片 Properties->Caption在没有内容的时候显示在图片框中间的文字 Properties->PopupMenuLayout->Me ...

  4. 我的DIY作品

    工欲善其事必先利其器~呵呵~我自己体会从无到有的乐趣~0~ 从Visio到CAD再到Autodesk,你妹的~只有自己才懂~哎~感谢兄弟朋友们的支持! Visio图: CAD图: Autodesk图:

  5. python的static方法和class方法

    class Caculator(object): name = "caculator" def __init__(self, x, y): self._x = x self._y ...

  6. Oracle查看用户密码过期,修改永不过期

    01.查看当前open用户 select username,account_status,expiry_date,profile from dba_users; 02.查看目前的密码过期策略 sele ...

  7. C语言中各个数据类型的取值范围

    因为CPU的差异,各系统中的数据类型所占的字节数(bytes)不同,二进制位数(bit)也不同.那么怎样才能知道自己系统的数据类型的字节数,位数呢? 授之以鱼不如授之以渔,大家可以自己从电脑里获取这些 ...

  8. iOS UI基础-18.0 UIView

    设置边框 UIView *bgView = [[UIView alloc] init]; bgView.backgroundColor = [UIColor whiteColor]; self.bgV ...

  9. JavaScript setInterval(定时/延时调用函数)

    setInterval是一个实现定时调用的函数,可按照指定的周期(以毫秒计)来调用函数或计算表达式.setInterval方法会不停地调用函数,直到 clearInterval被调用或窗口被关闭. 由 ...

  10. cocos2dx - JS - 碰撞检测

    碰撞检测是游戏的一个重要组成部分,我们这里使用一种最简单的方法,就是获取精灵的矩形碰撞框.当然圆形的碰撞检测也比较简单,其他形状就复杂多了.首先是如何获取矩形碰撞框:var hBox=this.her ...