服务器日期与我所在国家的日期不匹配


The Server Date Not Match With My Country Date

服务器日期/时间与我所在国家的日期/时间不匹配例如服务器时间:晚上11:30 ..但是我的当地时间已经是凌晨5点了

这可能是因为服务器和客户端在不同的时区。

始终使用"0 timezone" UTC来获得全球相同的时间表示。在php中,您可以使用以gm为前缀的函数来获取UTC的日期,例如gmtime。或者,您可以在代码中使用default_timezone_set设置时区:

例如,我在德国的本地时间是CEST或UTC+2,即比UTC早2小时:

<?php
echo 'Local time (Germany, CEST): ' . strftime('%F %H:%M:%S %z (%Z)') . "'n";
echo 'UTC (England, GMT): '       . gmstrftime('%F %H:%M:%S %z (%Z)') . "'n";
date_default_timezone_set('America/Los_Angeles');
echo 'LA time (US, PDT): '          . strftime('%F %H:%M:%S %z (%Z)') . "'n";
这个输出:

Local time (Germany, CEST): 2011-07-08 14:24:56 +0200 (CEST)
UTC (England, GMT):         2011-07-08 12:24:56 +0000 (GMT)
LA time (US, PDT):          2011-07-08 05:24:56 -0700 (PDT)

如果您希望您的脚本匹配您的本地时间更改您的php时区。如果你使用apache,你可以使用。htaccess文件。

或者把它放在php代码前面

<?php
date_default_timezone_set( 'Europe/Amsterdam' );
//the rest of your code
?>

将'Europe/Amsterdam'替换为您自己的时区。查看:http://php.net/manual/en/timezones.php查看时区列表