PHP日期函数错误
我需要得到30年以上的未来,这就是为什么我使用下面的代码PHP日期函数错误,php,Php,我需要得到30年以上的未来,这就是为什么我使用下面的代码 $currentDate = date("Y-m-d"); $dateOneYearAdded = strtotime(date("Y-m-d", strtotime($currentDate)) . " +30 year"); $endYr = date('Y', $dateOneYearAdded); 但当我测试这段代码时,它只工作了26年。我只能在本年度加上26年。如果我尝试增加26个以上,那么它将恢复到1970年 以下代码工作
$currentDate = date("Y-m-d");
$dateOneYearAdded = strtotime(date("Y-m-d", strtotime($currentDate)) . " +30 year");
$endYr = date('Y', $dateOneYearAdded);
但当我测试这段代码时,它只工作了26年。我只能在本年度加上26年。如果我尝试增加26个以上,那么它将恢复到1970年
以下代码工作正常:
$currentDate = date("Y-m-d");
$dateOneYearAdded = strtotime(date("Y-m-d", strtotime($currentDate)) . " +26 year");
$endYr = date('Y', $dateOneYearAdded);
我的代码有问题吗?还是PHP函数中有错误?请参阅以获取信息
UNIX时间戳统计自1970年以来的秒数,作为32位整数,其最大范围为2038
您应该使用对象
当然,如果要在数据库中存储日期,请确保使用日期或日期时间字段。您要求的时间戳大于PHP可以在系统上保存的最大整数值。根据PHP- 时间戳的有效范围为 通常从1901年12月13日星期五开始 2038年1月19日格林尼治标准时间20:45:54至星期二 03:14:07 GMT(以下是日期 与最小值和 32位有符号字符串的最大值 整数)。但是,在PHP5.1.0之前 该范围从1970年1月1日起受到限制 至19-01-2038,适用于某些系统(例如。 窗户) 所以一定要检查这是因为 时间戳的有效范围为 通常从1901年12月13日星期五开始 2038年1月19日格林尼治标准时间20:45:54至星期二 03:14:07 GMT(以下是日期 与最小值和 32位有符号字符串的最大值 整数)。但是,在PHP5.1.0之前 该范围从1970年1月1日起受到限制 至19-01-2038,适用于某些系统(例如。 窗户)
您可以改用class祝贺您,您遇到了。您可能需要切换到64位系统,或者使用可以表示(实际上)任意日期的类。如果您想通过2030升级PHP,则需要使用datetime对象,如果您仍然在32位系统上,则这对您没有帮助-datetime是正确的解决方案。