Здравствуйте. Не получается вычислить количество дней между двумя датами по условию: Задача такова, нужно выделить все элементы с датой создания меньше чем 30 дней.
Пробую так:
function date_d()
{
$diff = strtotime("now") - strtotime("-2592000 second");
return $diff;
}
Она мне возвращает количество секунд равное 30 дням (2592000) Понимаю, что истина где то рядом, но никак не соображу, как правильно это сделать.
Могу предложить два примера.
Выведет разницу в днях.
<?php
$curDate = new DateTime(); //Сравниваемая дата (текущая) Сюда нужно передавать дату для сравнения DateTime('2017-06-22').
$diffDate = new DateTime();
$diffDate = $diffDate->modify('-1 month'); //Дата на 1 месяц меньше текущей (можно '-30 day')
$difference = $curDate->diff($diffDate);
echo $difference->format('%R%a дней'); // return $difference->format('%R%a'); // Возвращаем разницу дней в строковом виде "-31"
?>
Или можно просто проверить разницу в условии.
<?php
$curDate = new DateTime(); //Сравниваемая дата (текущая) Сюда нужно передавать дату для сравнения DateTime('2017-06-22').
$diffDate = new DateTime();
$diffDate = $diffDate->modify('-1 month'); //Дата на 1 месяц меньше текущей (можно '-30 day')
if ($curDate < $diffDate){
// Проверяемая дата отличается от сегодняшней болие чем на 30 дней.
}
?>
<?php
$need_time = 2592000; //30 дней
$date1 = strtotime("2017-06-22 09:41:00");
$date2 = strtotime("2017-05-22 09:21:00");
$diff = abs($date1 - $date2); //В секундах
if($diff < $need_time) echo "Менее 30";
else echo "Более 30";
Где именно то сложности?
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости