从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()来查看当前的时区设置!
關於xxx,大陸內地可用的值是:
asia/chongqing ,asia/shanghai ,asia/urumqi (依次為重慶,上海,烏魯木齊)
港台地區可用:asia/macao ,asia/hong_kong ,asia/taipei (依次為澳門,香港,台北)
台灣地区可設為:date.timezone = asia//taipei
還有新加坡:asia/singapore
php5中的时间相差八小时的解决办法
安装好php5后,在论坛不经意间,在论坛上看到有人说php5.1.2的时间显示整整少8个小时,
<?php echo date("y-m-d h:i:s");?>
结果自己测试果然是相差8小时。
后来经过在论坛上找资料,结果终于解决,在php5以及起以上的版本,要输出本地的时间(限中国),可以这么写代码:
<?php date_default_timezone_set('asia/shanghai'); echo date('y-m-d h:i:s');?>
也可以这样写代码:
<?php date_default_timezone_set('asia/chongqing'); echo date('y-m-d h:i:s');?>
这样 时间相差八小时的问题就解决了!!~~~
更多相关教程请访问 php编程从入门到精通全套视频教程