Есть таблица, где имеется три поля с датами. Дата добавления объявления, дата отправки и дата прибытия.
Хочется написать скрипт где я получаю все старые даты и обновляю их.
1) Шаг 1. Получаю все старые даты.
SELECT *
FROM vehicle_country
WHERE discharge_date < NOW()
LIMIT 50
2) Шаг 2. Получаю текущую дату в нужном формате.
$today = date("Y-m-d");
3) Шаг 3. Нужно к этой дате прибавить 7 дней.
Вопрос как сделать так что бы $today был + 7 дней. $today = $today + 7. Как быть?
$date = new DateTime();
$date->add(new DateInterval('P7D'));
echo $date->format('Y-m-d') . "\n";
Передавайте в date
модифицированную точку времени.
<?php
$stop_date = '2009-09-30 20:24:00';
echo 'До модификации: ' . $stop_date;
$stop_date = date('Y-m-d H:i:s', strtotime($stop_date . ' +1 week'));
echo 'После: ' . $stop_date;
?>
Для PHP 5.2.0+
, Вы можете сделать следующее:
$stop_date = new DateTime('2009-09-30 20:24:00');
echo 'До модификации: ' . $stop_date->format('Y-m-d H:i:s');
$stop_date->modify('+1 week');
echo 'После: ' . $stop_date->format('Y-m-d H:i:s');
По мотивам с enSO.
$today = date("Y-m-d", time()+60*60*24*7);
или
$today = date("Y-m-d", strtotime("+7 days"));
Нужно максимально оптимизировать файловый выводНачал с обычной очереди сообщений и записи в отдельном потоке с предварительным форматированием