【问题标题】:Why can't I add more than 7400 days to date in php?为什么我不能在 php 中添加超过 7400 天的日期?
【发布时间】:2018-12-27 06:24:23
【问题描述】:

当我使用date() 函数时,请添加一定天数到目前正在使用:

date('d.m.Y', strtotime("+".round(5000)." days"))

但它不适用于:

date('d.m.Y', strtotime("+".round(7500)." days"))

有谁知道为什么,我该如何解决这个问题?

【问题讨论】:

标签: php date


【解决方案1】:

可能是因为Year 2038 problem 与 32 位版本的 PHP 结合使用。

您可以通过检查PHP_INT_SIZE 常量的值来检查您的 php 版本(x32 为 4,x64 为 8)。

2038 年 1 月 19 日之后的任何日期都会溢出用于 Unix 时间戳的 32 位有符号整数。

从今天算起的 5000 天是 2032 年 3 月 27 日

从今天算起的 7500 天是 2039 年 1 月 30 日

使用 64 位版本的 PHP 应该可以使用到 292277026596 年。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-17
    • 1970-01-01
    • 1970-01-01
    • 2018-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多