Подтвердить что ты не робот

PHP - добавьте формат от 1 дня до даты mm-dd-yyyy

<?php
    $date = "04-15-2013";
    $date = strtotime($date);
    $date = strtotime("+1 day", $date);
    echo date('m-d-Y', $date);
?>

Это сводит меня с ума и кажется таким простым. Я новичок в PHP, но я не могу понять это. Эхо возвращает 01-01-1970.

Дата $будет поступать из POST в формате m-d-Y, мне нужно добавить один день и использовать ее как новую переменную, которая будет использоваться позже.

Мне нужно преобразовать $date в Y-m-d, добавить 1 день, а затем вернуться обратно к m-d-Y? Было бы лучше узнать, как использовать DateTime?

4b9b3361

Ответ 1

там вы идете

$date = "04-15-2013";
$date1 = str_replace('-', '/', $date);
$tomorrow = date('m-d-Y',strtotime($date1 . "+1 days"));

echo $tomorrow;

это выведет

04-16-2013

Документация для обеих функций
date
strtotime

Ответ 3

используйте http://www.php.net/manual/en/datetime.add.php, например

$date = date_create('2000-01-01');
date_add($date, date_interval_create_from_date_string('1 days'));
echo date_format($date, 'Y-m-d');

Выход

2000-01-2

Ответ 4

$date = strtotime("+1 day");
echo date('m-d-y',$date);

Ответ 5

Формат, который вы использовали, не распознается strtotime(). Заменить

$date = "04-15-2013";

$date = "04/15/2013";

Или, если вы хотите использовать -, используйте следующую строку с годом впереди:

$date = "2013-04-15";

Ответ 6

На самом деле я хотел такой же вещи, Чтобы получить один год назад, на определенную дату!: -)

С подсказкой выше ответа от @mohammad mohsenipur Я получил следующую ссылку через его ссылку!

К счастью, существует метод, аналогичный методу date_add с именем date_sub!:-) Я делаю следующее, чтобы сделать то, что я хотел!

$date = date_create('2000-01-01');
date_sub($date, date_interval_create_from_date_string('1 years'));
echo date_format($date, 'Y-m-d');

Надеюсь, этот ответ поможет кому-то!: -)

Удачи, ребята!