在使用时间前先申明一下ini_set('data.timezone','Asia/Shanghai')申明一下亚洲时间,呵呵
这里有点怪,我试过申明其他城市,'Asia/Beijing','Asia/China'都不行 
'Asia/Harbin'  哈尔滨  可以
 晕了,不懂为什么

解决方案 »

  1.   

    跟系统时区和php时区设置有关
      

  2.   

    http://blog.csdn.net/keenx/archive/2006/03/21/631432.aspx
    从php5.10开始,php中加入了时区的设置,在php中显示的时间都是格林威治标准时间,这就造成了我们中国的用户会差八个小时的问题!
    相关设置是修改php.ini中的 date.timezone 参数:
    [Date]
    ; Defines the default timezone used by the date functions
    ;date.timezone =默认是关闭的,只需把注释去掉,改为即可
    [Date]
    ; Defines the default timezone used by the date functions
    date.timezone = PRC其中PRC是“中华人民共和国”!
    其他选项可以参考php手册。
    不过这上面的亚洲地区漏掉了我们的首都北京,不知道老外是不是故意的!如果没有修改php.ini的权限,只需要在调用时间日期函数的时候,调用 date_default_timezone_set(’PRC’) 即可!
    也可以调用date_default_timezone_get()来查看当前的时区设置!中国內地可用的值是:
    Asia/Chongqing ,Asia/Shanghai ,Asia/Urumqi (依次為重慶,上海,烏魯木齊)
    中国港台地區可用:Asia/Macao ,Asia/Hong_Kong ,Asia/Taipei (依次為澳門,香港,台北)
    中国台湾地区可設為:date.timezone = "Asia//Taipei"
    還有新加坡:Asia/Singapore
      

  3.   

    在使用时间前先申明一下ini_set('data.timezone','Asia/Shanghai')申明一下亚洲时间,呵呵
    这里有点怪,我试过申明其他城市,'Asia/Beijing','Asia/China'都不行 
    'Asia/Harbin'  哈尔滨  可以
     晕了,不懂为什么
    -----------------------
    因为中国太大了。知道什么叫日不落帝国吗 ;)
      

  4.   

    我喜欢用date.timezone ="Etc/GMT-8"这种写法。
    直接使用时差,不用去考虑他到底有没有记录那个城市的时区。
      

  5.   

    如果你不愿改php.ini这个文件,可以在编写程序时,加上这么一段代码即可date_default_timezone_set('asia/shanghai');