Ответ 1
$date = "Mar 03, 2011";
$date = strtotime($date);
$date = strtotime("+7 day", $date);
echo date('M d, Y', $date);
У меня есть дата этого формата 3 марта 2011 года в базе данных, и мне нужно продлить ее на 7 дней. Я имею в виду
$date = $date + 7. Есть ли встроенная функция для этого?
$date = "Mar 03, 2011";
$date = strtotime($date);
$date = strtotime("+7 day", $date);
echo date('M d, Y', $date);
Как отмечалось в нескольких блогах, strtotime() решает проблему "+1 месяц" ( "следующий месяц" ) в дни, которые не существуют в последующем месяце, по сравнению с другими реализациями, например, MySQL.
$dt = date("Y-m-d");
echo date( "Y-m-d", strtotime( "$dt +1 day" ) ); // PHP: 2009-03-04
echo date( "Y-m-d", strtotime( "2009-01-31 +2 month" ) ); // PHP: 2009-03-31
Еще один новый способ создания объекта:
$date = new DateTime('now');
$date->add(new DateInterval('P7D'));
echo date('d/m/Y', strtotime('+7 days'));
да
$oneweekfromnow = strtotime("+1 week", strtotime("<date-from-db>"));
на другой заметке, почему у вас есть дата в базе данных?
onClose: function(selectedDate) {
$("#dpTodate").datepicker("option", "minDate", selectedDate);
var maxDate = new Date(selectedDate);
maxDate.setDate(maxDate.getDate() + 6); //6 days extra in from date
$("#dpTodate").datepicker("option", "maxDate", maxDate);
}