6

我有一个来自 MySql 的固定日期

startDate = 07/03/2011

我想在这个日期之上加上 60 天来获得一个 endDate。

$startDate = $result['startDate'];
$endDate = ??? + strtotime("+60 days");
echo $endDate;

根据我的研究,我知道它与 strtotime 有关,但我遇到的所有站点都基于当前工作站时间的开始日期。我的日期已经确定并在运行和获取 endDate 之前输入。

帮助?提前致谢!

4

4 回答 4

8

除了其他人提供的 PHP 解决方案之外,您还可以endDate在 MySQL 内部创建正确的解决方案,从而省去一些麻烦:

SELECT startDate, DATE_ADD(startDate, INTERVAL 60 DAY) AS endDate FROM table;

-- Or by months (not exactly the same thing)
SELECT startDate, DATE_ADD(startDate, INTERVAL 2 MONTH) AS endDate FROM table;

相关文档在这里...

于 2011-07-03T18:11:36.530 回答
5

你可以重新格式化结果strtotime()

$startDate = $result['startDate']; // 07/03/2011
$endDate = date("m/d/Y", strtotime("$startDate +60 days"));

演示:http ://codepad.org/9rWnoeQb

于 2011-07-03T18:11:29.023 回答
2
$startDate = "07/03/2011";
$endDate = strtotime("+60 days",time($startDate));
$formatted = date('m/d/Y',$endDate);
echo $endDate . "<br/>" . $formatted;
于 2011-07-03T18:13:09.850 回答
1

一天 86400 秒,乘以天数.. 并将其添加到当前时间。

$nextMonth = time()+86400*60;
echo date("Y-m-d H:i:s", $nextMonth);  
于 2011-07-03T18:11:38.950 回答