我编写了一个 sql 查询,从给定的日期开始递增 1 年、10 个月、11 个月,以及更多的日期。它在第 12 天之前的每个月都可以正常工作,当我输入第 13 天或第 13 天之后,年份将更改为 1971 年或 1970 年。我不明白为什么?
这是我的代码:
$Domain_Renewal_Date = date("d/m/Y", strtotime(date("d/m/Y", strtotime($Domain_Registered_Date)) ." + 365 day"));
$Alert_Mail_Date= date("d/m/Y", strtotime(date("d/m/Y", strtotime($Domain_Renewal_Date)) ." - 60 day"));
$Alert_Mail_Date1= date("d/m/Y", strtotime(date("d/m/Y", strtotime($Domain_Renewal_Date)) . " - 30 day"));
$Alert_Mail_Date2= date("d/m/Y", strtotime(date("d/m/Y", strtotime($Domain_Renewal_Date)) . " - 22 day"));
$Alert_Mail_Date3= date("d/m/Y", strtotime(date("d/m/Y", strtotime($Domain_Renewal_Date)) . " - 17 day"));
$Alert_Mail_Date4= date("d/m/Y", strtotime(date("d/m/Y", strtotime($Domain_Renewal_Date)) . " - 10 day"));
$Alert_Mail_Date5= date("d/m/Y", strtotime(date("d/m/Y", strtotime($Domain_Renewal_Date)) . " - 5 day"));
最佳答案
您已将该日期设置为 Unix timestamp ,因此当您添加日期并超出范围时,它会回到 1970 年 1 月 1 日,即为该格式设置的日期。
用 format is Tuesday 2038-01-19 表示的最大日期.
我建议您更改该字段的格式。
关于php - 自动递增时的MySQL日期问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31317348/