当前位置:首页 > PHP教程 > php日期 > 列表

php设置时区方法介绍

发布:smiling 来源: PHP粉丝网  添加日期:2014-01-07 14:42:37 浏览: 评论:0 

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 函数来设置时区,代码如下:

  1. <?php 
  2. date_default_timezone_set("Asia/Shanghain"); //设置时区为上海 
  3. ?> 

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

  1. <?php 
  2. date_default_timezone_set("Asia/Tokyo"); 
  3. ?> 

系统初始化时,加上

  1. ini_set('date.timezone','Asia/Shanghai');  
  2. //或 
  3. date_default_timezone_set("PRC");  

就将解决时区相差8小时的问题,还有如果你有php.ini管理权限可直接在php.ini中修改.

手动修改php.ini设置:打开php找到date.timezone = "PRC" 如有去掉前面的分号,没有的话手动添加,装上PHP5后你会发现这样的问题,代码如下

  1. <?php    
  2. $atime=date("Y-m-d H:i:s");    
  3. echo $atime;    
  4. ?>   
  5. <?php 
  6. $atime=date("Y-m-d H:i:s"); 
  7. echo $atime
  8. ?> 

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

格林威治标准时间和北京时间大概差8个小时左右 那么我们如何避免时间误差呢?我们一起来看看解决方法,在页头使用date_default_timezone_set()设置我的默认时区为北京时间,代码如下:

  1. <?    
  2. date_default_timezone_set('PRC');    
  3. echo date('Y-m-d H:i:s');    
  4. ?> 

时间和服务器当前时间一样了,如果发生插入数据库错误的话,请确保 date('Y-m-d H:i:s') 中的 H 为大写。

Tags: php设置 时区 方法

分享到: