以 PHP 格式访问 2038 年以后的日期

2022-08-31 00:27:15

我的理解是,由于PHP使用毫秒表示日期的性质,您无法表示2038年以后的日期。我有一个问题,我想计算遥远未来的日期。几千年前。

显然,由于限制,我无法使用php date函数来表示此日期,但是,我有一些东西在我身边......我想做的就是存储年,月和日。我不在乎小时,分钟,秒和毫秒。

我是否正确地认为,如果不包括这些额外的信息,我应该能够在未来更远的地方进行计算,因为我愿意丢弃很多信息。这是当前执行此操作的任何库吗?如果没有,是否有任何关于如何解决这个问题的建议?


答案 1

或者,可以使用 DateTime 类,该类在内部独立表示时间分量。因此,它不受2038年限制的影响(除非您使用::getTimestamp)。


答案 2

您可以使用 64 位平台。

整数的大小取决于平台,尽管通常的值(即 32 位有符号)的最大值约为 20 亿。64 位平台的最大值通常约为 9E18。

来源

找出你的平台是 64 位与 .如果 ,则您的系统为 64 位。var_dump(PHP_INT_SIZE === 8)TRUE


推荐