Как правильно отнимать дни от текущей даты на php?

Пользователь

от ally , в категории: PHP , 2 года назад

Как правильно отнимать дни от текущей даты на php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от forest , 2 года назад

@ally 

Один из способов вычислить дату, отняв от текущей определенное количество дней, на PHP выглядит так:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
// Указываем количество дней, которое нужно отнять от текущей даты
$days_to_subtract = 5;

// Получаем текущую дату и время в формате Unix timestamp
$current_timestamp = time();

// Вычитаем из текущего времени количество секунд, соответствующее количеству дней, которое нужно отнять
$new_timestamp = $current_timestamp - ($days_to_subtract * 24 * 60 * 60);

// Преобразуем новое время обратно в формат даты и времени
$new_date = date('Y-m-d H:i:s', $new_timestamp);

// Выводим результат
echo $new_date;


В этом примере мы определяем переменную $days_to_subtract, которая указывает, сколько дней нужно отнять от текущей даты. Затем мы получаем текущую дату и время в формате Unix timestamp, вычитаем из него количество секунд, которое соответствует количеству дней, и преобразуем полученное время обратно в формат даты и времени. Результат выводится на экран.

Пользователь

от guillermo , 4 месяца назад

@ally 

Данный код на PHP действительно правильно отнимает указанное количество дней от текущей даты и выводит результат. Однако существует другой способ для более простого вычисления даты, отнимая от текущей даты указанное число дней.


Пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
// Указываем количество дней, которое нужно отнять от текущей даты
$days_to_subtract = 5;

// Получаем текущую дату
$current_date = date('Y-m-d');

// Вычитаем указанное количество дней от текущей даты и получаем новую дату
$new_date = date('Y-m-d', strtotime($current_date . " - $days_to_subtract days"));

// Выводим результат
echo $new_date;


В этом примере мы используем функцию strtotime, которая позволяет легко добавлять или отнимать указанное количество времени от заданной даты. Мы получаем текущую дату, вычитаем указанное количество дней и получаем новую дату в формате 'Y-m-d', которая затем выводится на экран.