当前位置: 代码迷 >> PHP >> php中本土时区设置
  详细解决方案

php中本土时区设置

热度:44   发布时间:2016-04-28 23:11:46.0
php中本地时区设置
输出当前时间:
<?php$time   = date('Y-m-d H:i:s');echo $time;


咦?怎么是 2009-02-26 06:52:58。 本机(上海)时间明明是:2009-02-26 14:52:58
我的时间整整提前了进入未来8个小时:) 大家已经猜出来了,东八区,是时区问题,php如何知道时区呢?通过更改php.ini中的设置:
[Date]; Defines the default timezone used by the date functionsdate.timezone = Asia/Shanghai

重新启动服务器,重新运行代码你就会看到时间输出一致了

php5中php.ini默认是GMT时间,北京是+8时区,
不建议在php.ini中修改时区设置可通过php脚本来设置,若您有自己完全管理权的服务器当然也可以在php.ini中修改默认时区设置。如果没有权限改php.ini,
可以用函数ini_set(),date_default_timezone_set通过以下方法来设置
<?phpdate_default_timezone_set('Asia/Shanghai');//'Asia/Shanghai'   亚洲/上海date_default_timezone_set('Asia/Chongqing');//其中Asia/Chongqing'为“亚洲/重庆”date_default_timezone_set('PRC');//其中PRC为“中华人民共和国”ini_set('date.timezone','Etc/GMT-8');ini_set('date.timezone','PRC');ini_set('date.timezone','Asia/Shanghai');ini_set('date.timezone','Asia/Chongqing');

通过echo date_default_timezone_get();来查看设置。
  相关解决方案