date 获得的是服务器时间,要是你在本地测试的,估计应该是不会错的
唯一的可能就是你在服务器上测试的,而服务器时间和你本地机器时间不一样

解决方案 »

  1.   

    date 获得的是服务器时间,要是你在本地测试的,估计应该是不会错的
    唯一的可能就是你在服务器上测试的,而服务器时间和你本地机器时间不一样
      

  2.   

    两个方法任意一种可以解决这个事情
    1:修改你服务器的时间配置,我忘记是apache的配置还是php.ini的设置,这个我不熟悉,抱歉
    2:php运行的时候,时间初始化一下,例如date_default_timezone_set('America/New_York');这样即使美国纽约时间了,你date('Y-m-d H:i:s')时候就是他的时间了
      

  3.   


    date_default_timezone_set使用这个函数改变时区,还可以用int_set的。
      

  4.   

    使用date_default_timezone_set函数设置时区。
    或者将得出的时间直接+8小时也可以,不过不推荐这样。
      

  5.   

    找到php.ini中的“;date.timezone =”这行,将“;”去掉,改成“date.timezone = PRC”(PRC:People's Republic of China 中华人民共和国),重启Apache,问题解决。
      

  6.   

    date_default_timezone_set('Asia/Shanghai')
      

  7.   

    // set the default timezone to use. Available since PHP 5.1
    date_default_timezone_set('UTC');
    $new_riqi=date("Y-m-d  H:i:s");
    echo $new_riqi;