PHP系统时区8小时差设置方法

修改php系统时区的两种方式:

1、修改php.ini文件中的设置,找到[date]下的“;date.timezone=”,将该项修改为date.timezone=asia/hong_kong (prc 中国时间),然后重新启动apache服务器。

2、在应用程序中,使用时间日期函数之前添加“date_default_timezone_set(“asia/hong_kong”)”函数

修改php.ini文件后获取本地时间:

  1. <?php
  2. echo “现在是北京时间:”.date(“y-m-d h:i:s”).”<p>”;
  3. ?>

显示结果:现在是北京时间:2010-11-30 20:50:03 (与本地时间相符)

php.ini修改后的代码:

  1. [date]
  2. ; defines the default timezone used by the date functions
  3. ; http://php.net/date.timezone
  4. date.timezone = prc

下面看看更多方法

1.在php.ini文件中修改设置。

  1. [date]
  2. //defines the default timezone used by the date functions
  3. date.timezone = asia/shanghai

这里可以设置shanghai,chongqin,hong_kong,taibei...等等,可就是没有找到beijing,不知道是什么原因。

2.在php程序中运行时设置。

  1. <?php
  2. if(date_default_timezone_get() != "1asia/shanghai") date_default_timezone_set("asia/shanghai");
  3. ?>

注意:用"date_default_timezone_get"获得的时间设置中有一个1,也不太清楚是杂回事呢。

3.在使用时间时自己多加8*3600秒也是行滴。

  1. <?php
  2. echo date("y-m-d h:i:s",time()+8*3600);
  3. ?>

注:自php5.0开始,用php获取系统时间时,时间比当前时间少8个小时。原因是php.ini中没有设置timezone时,php是使用的utc时间,所以在中国时间要少8小时.