欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php设置时区方法介绍

程序员文章站 2024-02-09 10:11:16
...
php默认时区是欧美国家的所以与我们中国时区相差了整整8小时哦,下面我来给各位介绍php设置时区方法,有需要了解的朋友可进入参考。

在 php.ini 中,默认是 date.timezone = UTC。修改为中国时区,修改为 date.timezone = PRC。如果直接写 GMT 格式的,是 date.timezone = Etc/GMT+8。

另外,也可以在 PHP 页面头中设置。

代码如下 复制代码

date_default_timezone_set('PRC');


在PHP5中, 有很多方法可以设置或者获取默认的时区设置,例如,使用date_default_timezone_setl函数来设置时区

代码如下 复制代码

date_default_timezone_set("Asia/Shanghain"); //设置时区为上海
?>

或者 设置东京的时区代码为:

date_default_timezone_set("Asia/Tokyo");
?>

系统初始化时,加上

ini_set('date.timezone','Asia/Shanghai');

date_default_timezone_set("PRC");

就将解决时区相差8


还有如果你有php.ini管理权限可直接在php.ini中修改哦


手动修改php.ini设置

打开php找到date.timezone = "PRC" 如有去掉前面的分号,没有的话手动添加!

装上PHP5后你会发现这样的问题:

代码如下 复制代码
$atime=date("Y-m-d H:i:s");
echo $atime;
?>
$atime=date("Y-m-d H:i:s");
echo $atime;
?>

你也许会发现,输出的时间和你现在的时间是不相同的。

原因是假如你不在程序或配置文件中设置你的服务器当地时区的话,PHP所取的时间是格林威治标准时间,所以和你当地的时间会有出入。

格林威治标准时间和北京时间大概差8个小时左右 那么我们如何避免时间误差呢?

我们一起来看看解决方法:

在页头使用date_default_timezone_set()设置我的默认时区为北京时间。

代码如下 复制代码



date_default_timezone_set('PRC');
echo date('Y-m-d H:i:s');
?>


时间和服务器当前时间一样了。

如果发生插入数据库错误的话,请确保 date('Y-m-d H:i:s') 中的 H 为大写。