如果我运行在PHP以下:PHP mktime对于历元返回-3600,而不是0
回波mktime(0,0,0,1,1,1970);
返回的值是-3600,而不是0,如我所料。
服务器是基于英国的,目前它是9月21日(即BST夏令时)(尽管我不希望这会影响时代的时间戳),并根据php.info:“默认时区欧洲/伦敦”。
设定夏令时标志也,如下,得到:
回波mktime(0,0,0,1,1,1970,0); (即正确的DST标志,0作为1月1日不是DST/BST) 返回-3600
echo mktime(0,0,0,1,1,1970,1); (不正确的标志 - 设置1月1日为DST) 返回-7200
echo mktime(0,0,0,1,1,1970,-1); (即DST标志未设置 - 留给PHP决定) 返回-3600
有没有人知道为什么这个纪元会以-3600而不是0返回?
为['mktime'](HTTP的'is_dst'参数://ca.php .net/manual/en/function.mktime.php)已被弃用从PHP 5.1开始。 – 2010-09-21 18:00:32