我有一个棘手的问题,我已经在 Stackoverflow 上搜索了所有相关问题,但都没有解决我的难题,尽管我认为我在绕圈子,所以这是问题:
我有这个代码:
$val = (strtotime('2010-03-22 10:05:00')-strtotime('2010-03-22 09:00:00'))
这将正确返回 $val = 3900(3600 秒 = 1 小时,300 秒 = 5 分钟)
但是这样做:
echo date("H:i",$val)."<br>";
返回 02:05
即使这样做:
echo date("H:i",3900)."<br>";
返回 02:05(只是天真地确定)
这样做:
echo date("H:i eTO",3900)."<br>";
返回
02:05 System/LocaltimeCET+0100
这是正确的,我的时区是 CET 并且是 +1。
这是怎么回事?date() 是否出于某种原因更正时区?还是我做错了什么?