Здравствуйте Гость [ Вход | Регистрация ] | Форум в сети 6755-й день

Шановні користувачі! Запрошуємо вас до офіційного телеграм-канала 0day Community. Тут ви зможете поспілкуватися одне з одним та дізнатися про останні новини щодо роботи ресурса, поставити запитання до адміністрації, тощо. Перейти до телеграм-канала можна відсканувавши QR-код або натиснувши на посилання: @zeroday_ua

 работа с датой php, вычислить остатки дней

maxdam
May 17 2016, 7:24
  
Пост #1



Репутация:   86  
Постоялец
***

Группа: Пользователи
Сообщений: 1 154
С нами с: 20-March 06


1.// есть дата в формате (год-месяц-день): 2016-05-16, нужно от этой даты прибавить 90 дней и найти сколько
еще осталось дней до даты 90 дней. (2016-05-16 + 90 дней = значение. Значение - сегодня = дней).

2.// есть дата в формате (год-месяц-день): 2016-05-16, нужно от этой даты прибавить 90 дней и найти сколько уже прошло дней от даты +90 дней. (2016-05-16 + 90 дней = значение. Сегодня - Значение от даты 90 дней = дней)

Помогите, спасибо... +1 с меня
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
 
Reply to this topicStart new topic
Ответов(1 - 3)
Анттошка
May 17 2016, 10:25
  
Пост #2



Репутация:   103  
Старожил
****

Группа: Пользователи
Сообщений: 2 276
С нами с: 29-June 09


Кури сюда: http://php.net/manual/ru/class.datetime.php
$dateToCompareString = "2016-05-16";
$dateNow = new DateTime("now");

$date = new DateTime($dateToCompareString);
$dateInterval = new DateInterval('P90D');
$newDate = (new DateTime($dateToCompareString))->add($dateInterval);
$interval = $dateNow->diff($newDate);
echo $interval->days;


Сообщение отредактировал Анттошка - May 17 2016, 11:04
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
yarnik
May 17 2016, 11:57
  
Пост #3



Репутация:   31  
Активист
*

Группа: Пользователи
Сообщений: 233
С нами с: 25-January 07


еще такой тип как правило использует MySQL то прямо там можно выполнять эти действия, не гоняя даные в пхп туда сюда.
SELECT DATE_ADD('2016-05-17',INTERVAL 90 DAY);

http://www.mysql.ru/docs/man/Date_and_time_functions.html
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
maxdam
May 17 2016, 19:16
  
Пост #4



Репутация:   86  
Постоялец
***

Группа: Пользователи
Сообщений: 1 154
С нами с: 20-March 06


(yarnik @ May 17 2016, 12:57) Перейти к цитате

еще такой тип как правило использует MySQL то прямо там можно выполнять эти действия, не гоняя даные в пхп туда сюда.
SELECT DATE_ADD('2016-05-17',INTERVAL 90 DAY);

http://www.mysql.ru/docs/man/Date_and_time_functions.html


От 2016.05.17 добавили 90 дней, получили результат: 2016-08-15.
SELECT DATE_ADD('2016-05-17',INTERVAL 90 DAY);
SELECT DATEDIFF( '2016-08-15', NOW( ) )
Вот что нужно было мне!

Сообщение отредактировал maxdam - May 17 2016, 23:05
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Reply to this topicStart new topic

 



- Упрощённая версия
Сейчас: 11th September 2024 - 19:20
Сайт не розміщує електронні версії творів, а займається лише колекціонуванням та каталогізацією посилань, що публікуються нашими користувачами. Якщо Ви є правовласником якоїсь частини опублікованого матеріалу та не бажаєте, щоб посилання на нього знаходилось в нашому каталозі, зв’яжіться з нами і ми видалимо його. Файли для обміну надані користувачами сайту і адміністрація не несе відповідальності за їх вміст.