95 / 61 / 22
Регистрация: 11.03.2013
Сообщений: 604
Записей в блоге: 6
1

Разница дат в днях

23.01.2020, 23:47. Показов 1687. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Форум всем доброй ночи или дня (в зависимости от региона)
Подскажите пожалуйста, как разницу двух дат в днях вывести, НО... Чтобы считалось так
Если текущая дата меньше той которую задумал, то выводилось бы в +
а если наоборот, то в -
Хочу создать некий премиум аккаунт.

В БД храню unixtime число 1611111111 в переводе получаю 20.01.2021, 06:51:51
Итак, Сегодняшняя дата 24.01.2020 **:**:**
Что делаю я
PHP
1
2
3
$UnixTimePrem = 1611111111;
        $prem = date_diff(new DateTime(), new DateTime(gmdate("Y-m-d H:i:s", $UnixTimePrem)))->days;
echo $prem;
результат 362 дня. Всё отлично.

Но вот если будет стоять
Код
$UnixTimePrem = 1579725423;
то есть 23.01.2020, 00:37:03 и то есть день назад.
Мне покажет результат в 1 день. Не -1 день. А просто разница 1 день. Ну в принципе чего я ожидал, я же разницу спрашиваю между датами.
А как сделать чтобы когда нынешнее время превысило время в БД, просто выводилось бы ноль.
Некая проверка на прем.

Переводить нынешнюю дату в UnixTime и сравнивать два числа?
Или из unix в дату и сравнить даты?

Как грамотнее это сделать?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.01.2020, 23:47
Ответы с готовыми решениями:

Разница дат в днях
Подскажите что делать и в каком направлении идти. даты у меня в формате date("Y-m-d"). пробовал...

Вычислить разницу дат в днях
есть две даты в таком формате 2012-12-20 2012-11-01 как найти их разницу в днях?

Определить разницу двух дат в днях
Ребятишки,помогите,не могу разобраться. вообщем вот задание: Посетитель вводит дату праздника, в...

Разница в днях
Здравствуйте! Под вечер уже мозг сломал на простой задаче... Не подскажите, есть массив дней ...

1
Невнимательный
2472 / 877 / 286
Регистрация: 08.02.2013
Сообщений: 5,521
Записей в блоге: 2
24.01.2020, 07:14 2
Лучший ответ Сообщение было отмечено anomal6 как решение

Решение

PHP
1
2
3
4
5
6
7
$now = new DateTime();
 
$interval = date_diff($now, new DateTime(gmdate("Y-m-d H:i:s", 1611111111)));
echo $interval->format('%R%a дней')."<br>\n";
 
$interval = date_diff($now, new DateTime(gmdate("Y-m-d H:i:s", 1579725423)));
echo $interval->format('%R%a дней')."<br>\n";
+362 дней
-1 дней
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.01.2020, 07:14
Помогаю со студенческими работами здесь

Разница дат на PHP: Дата из БД и текущая дата!
Доброго времени суток! У меня возникла такая проблема: Мне надо создать чтото вроде &quot;горящих...

Подсчитать разницу дат в днях
Доброго времени суток! Допустим есть датагрид с двумя столбцами по одному столбцу идут первые даты...

Разница в днях
Найти разницу в днях между двумя заданными датами. Даты вводить с клавиатуры

Разница в днях
Найти разницу в днях между двумя заданными датами. Даты вводить с клавиатуры.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru