Для очень простого исправления, основанного на вашем коде:
$day='2010-01-23';
// add 7 days to the date above
$NewDate = date('Y-m-d', strtotime($day . " +7 days"));
echo $NewDate;
Если вы используете PHP 5.3+, вы можете использовать новые библиотеки DateTime, которые очень удобны:
$day = '2010-01-23';
// add 7 days to the date above
$NewDate = new DateTime($day);
$NewDate->add(new DateInterval('P7D');
echo $NewDate->format('Y-m-d');
Я полностью перешел на использование DateTime
сейчас, так как он очень мощный. Вы также можете легко указать часовой пояс при создании экземпляра, то есть new DateTime($time, new DateTimeZone('UTC'))
. Вы можете использовать методы add()
и sub()
для изменения даты с объектами DateInterval. Вот документация: