Php:将可变天数添加到Y-m-d日期格式

Php:将可变天数添加到Y-m-d日期格式,php,date,strtotime,addition,Php,Date,Strtotime,Addition,我正在尝试使用“Y-m-d”格式为日期添加天数: $oldDate = '2013-05-15'; $newDate = date('Y-m-d', strtotime($oldDate. " + 5 days")); 本文件输出“2013-5-20”,但如下所示: $oldDate = '2013-05-15'; $addedDays = 5; $newDate = date('Y-m-d', strtotime($oldDate. " + $addedDays days")); 不起作用

我正在尝试使用“Y-m-d”格式为日期添加天数:

$oldDate = '2013-05-15';
$newDate = date('Y-m-d', strtotime($oldDate. " + 5 days"));
本文件输出“2013-5-20”,但如下所示:

$oldDate = '2013-05-15';
$addedDays = 5;
$newDate = date('Y-m-d', strtotime($oldDate. " + $addedDays days"));

不起作用,它只输出“1970-01-01”,这没有意义,因为我只尝试将要添加的天数放入变量中。它们基本上是相同的代码。我感谢你帮助我理解这一点。谢谢

不过,代码是正确的,可以正常工作,以防万一

$newDate = date('Y-m-d', strtotime($oldDate. " + {$addedDays} days"));
使用该类。这会让你免去很多头痛

// Create a DateTime object
$date = new DateTime('2013-05-15');

// Original date
echo $date->format('d. F Y'), '<br>';

// Add 5 days
$date->modify('+5 days');

// Modified date
echo $date->format('d. F Y'), '<br>';
//创建日期时间对象
$date=新日期时间('2013-05-15');
//原始日期
echo$date->format('d.F Y'),“
”; //加5天 $date->modify(“+5天”); //修改日期 echo$date->format('d.F Y'),“
”;
我已经检查过了,但它在我的计算机上不工作(可能是因为PHP版本)。不过,我找到了另一种解决方案:

$timeBase = time();

$sDays2change = '+182'; // 6 months

$newtime = strtotime($sDays2change . ' day', $timeBase);

echo date('d/m/Y', $newtime);

对我有用:哎呀,我真的错了。我加了“-2”天,这就是为什么。。无论如何,谢谢你验证代码