服务器日期/时间与我的国家/地区日期/时间不匹配 例如服务器时间:晚上11点30分..但我的当地时间已经是早上5.3点
答案 0 :(得分:1)
这可能是因为服务器和客户端位于不同的timezones。
始终使用“0时区”UTC在全球范围内获得相同的时间表示。在php中,您可以使用前缀为gm
的函数(例如gmtime
)来获取UTC日期。或者,您可以使用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)
答案 1 :(得分:0)
如果您希望脚本与您的本地时间相匹配,请更改您的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获取时区列表