发生了什么事 1969年12月31日 下午7:00

2022-08-30 15:28:55

每次在PHP中,当我创建一个像这样的变量时:

$date = strtotime($row['date']);
$date = date("M d Y \a\\t g:i A", $date); // Mmm dd YYYY at h:mm PM/AM

并且不知何故碰巧是0,日期显示在屏幕上?谷歌没有告诉我太多,我想知道这个日期是否有任何意义。row['date']Dec 31 1969 at 7:00 PM


答案 1

Unix 时代是 1970 年 1 月 1 日 00:00:00 UTC 的时间。这是所有时间戳的参考点。当您使用PHP的日期/时间函数时,您始终使用自纪元以来的秒数。时间 0 是纪元,您(或您的 Web 服务器)必须位于美国东海岸,这比 UTC 时间晚了 5 个小时。


答案 2

我觉得有趣的是,这里没有一个回应试图回答你的实际问题,即(如果我可以解释的话)“Unix纪元时间的实际日期有什么意义”?

我不是这个主题的专家,但基本上,据我所知,纪元时间的概念是在1971年发明的。程序员选择 1971 年 1 月 1 日格林尼治标准时间的任意日期作为纪元时间。这部分是由于较旧的计算机无法处理大量数字,因此日期必须是最近的过去。之后,纪元时间被调整为1970年1月1日,以便成为一个不错的整数。

所以基本上,那天没有“发生”任何事情。这是根据正在完成的工作的原始时间选择的任意日期。


推荐