У меня есть дата в этом формате:
2009-01-01
Как я возвращаю ту же дату, но 1 годом ранее?
Вы можете использовать strtotime
:
$date = strtotime('2010-01-01 -1 year');
Функция strtotime
возвращает уникальную метку времени, для получения отформатированной строки можно использовать date
:
echo date('Y-m-d', $date); // echoes '2009-01-01'
Используйте функцию strtotime():
$time = strtotime("-1 year", time());
$date = date("Y-m-d", $time);
// set your date here
$mydate = "2009-01-01";
/* strtotime accepts two parameters.
The first parameter tells what it should compute.
The second parameter defines what source date it should use. */
$lastyear = strtotime("-1 year", strtotime($mydate));
// format and display the computed date
echo date("Y-m-d", $lastyear);