However the code is right and works, just in case try
$newDate = date('Y-m-d', strtotime($oldDate. " + {$addedDays} days"));
题
i'm trying to add days to a date with the 'Y-m-d' format:
$oldDate = '2013-05-15';
$newDate = date('Y-m-d', strtotime($oldDate. " + 5 days"));
This ouputs '2013-5-20', but below:
$oldDate = '2013-05-15';
$addedDays = 5;
$newDate = date('Y-m-d', strtotime($oldDate. " + $addedDays days"));
doesn't work, it only outputs '1970-01-01', which doesn't make sense because i only tried to put the days to be added in a variable. They're basically the same code. I appreciate the help trying to understand this. Thanks!
解决方案
However the code is right and works, just in case try
$newDate = date('Y-m-d', strtotime($oldDate. " + {$addedDays} days"));
其他提示
Use the DateTime class. It will spare you a lot of head-ache.
// 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>';
I had checked it, but it doesn't work on my computer (likely due to the PHP version). I found an alternative solution, though:
$timeBase = time();
$sDays2change = '+182'; // 6 months
$newtime = strtotime($sDays2change . ' day', $timeBase);
echo date('d/m/Y', $newtime);