Php текущая дата 3 дня

Содержание
  1. Операции с датами и временем Unixtime в PHP
  2. Получение временных меток и дат
  3. Число дня недели
  4. Числа месяца
  5. Текущий месяц:
  6. Преведущий месяц:
  7. Следующий месяц:
  8. Число дней в текущем месяце
  9. Порядковый номер недели
  10. Число дней в текущем году
  11. Текущий квартал
  12. Арифметические операции
  13. Прибавить к дате 10 секунд
  14. Прибавить к дате 10 минут
  15. Прибавить к дате 1 час
  16. Прибавить к дате 1 день
  17. Прибавить к дате неделю
  18. Прибавить к дате месяц
  19. Прибавить к дате год
  20. Сколько прошло
  21. Сколько прошло c 8:00
  22. Сколько прошло c понедельника этой недели
  23. Сколько прошло c начала года
  24. Сколько прошло c определённой даты
  25. Сколько остается
  26. Сколько остается до 23:00
  27. Сколько остается до конца недели
  28. Сколько остается до конца месяца
  29. Сколько остается до конца года
  30. Сколько остается до определенной даты
  31. Время между датами
  32. Количество часов между датами
  33. Количество дней между датами
  34. Количество месяцев между датами
  35. Комментарии 2
  36. Другие публикации
  37. Дата и время в PHP
  38. Функция даты в PHP
  39. date() – форматирование даты PHP
  40. Основные параметры шаблона
  41. дд.мм.ггг (dd.mm.yyyy)
  42. гггг-мм-дд (yyyy.mm.dd)

Операции с датами и временем Unixtime в PHP

Unix-время (англ. Unix time, также POSIX-время) — система описания моментов во времени. Определяется как количество секунд, прошедших с полуночи 1 января 1970 года.

В PHP текущую метку времени возвращает функция time() и функция strtotime(), также с unix-метками работает класс DateTime.

Получение временных меток и дат

Число дня недели

// Понедельник текущей недели: $time = strtotime('this week monday, 00:00'); echo date('d.m.Y H:i', $time); // 24.07.2023 00:00 // Понедельник предыдущий недели: $time = strtotime('previous week monday, 00:00'); echo date('d.m.Y H:i', $time); // 17.07.2023 00:00 // Понедельник следующей недели: $time = strtotime('next monday, 00:00'); echo date('d.m.Y H:i', $time); // 31.07.2023 00:00

Числа месяца

Текущий месяц:

// Первый день текущего месяца: $time = strtotime('first day of this month 00:00'); echo date('d.m.Y H:i:s', $time); // 01.07.2023 00:00:00 // Последний день текущего месяца: $time = strtotime('last day of this month 23:59'); echo date('d.m.Y H:i:s', $time); // 31.07.2023 23:59:00

Преведущий месяц:

// Первый день предыдущего месяца: $time = strtotime('first day of previous month 00:00'); echo date('d.m.Y H:i:s', $time); // 01.06.2023 00:00:00 // Последний день предыдущего месяца: $time = strtotime('last day of previous month 23:59'); echo date('d.m.Y H:i:s', $time); // 30.06.2023 23:59:00

Следующий месяц:

// Первый день следующего месяца: $time = strtotime('first day of next month 00:00'); echo date('d.m.Y H:i:s', $time); // 01.08.2023 00:00:00 // Последний день следующего месяца: $time = strtotime('last day of next month 23:59'); echo date('d.m.Y H:i:s', $time); // 31.08.2023 23:59:00

Число дней в текущем месяце

Порядковый номер недели

Число дней в текущем году

echo date('L') ? 366 : 365; // 365

Текущий квартал

echo intval((date('n') + 2) / 3); // 3

Арифметические операции

Для сложения и вычитания времени можно применить функцию strtotime() или просто работать с секундами:

Читайте также:  Function returning list in python
1 минута 60 секунд 10 минут 600 секунд
1 час 3600 секунд 10 часов 36000 секунд
1 день 86400 секунд 2 дня 172800 секунд
1 неделя 604800 секунд 2 недели 1209600 секунд
1 месяц 2629743 секунд 2 месяца 5259486 секунд
1 год 31556926 секунд 2 года 63072000 секунд

Прибавить к дате 10 секунд

$time = time() + 10; echo date('d.m.Y H:i:s', $time); // 27.07.2023 14:50:25 /* или */ $time = strtotime('+10 seconds', time()); echo date('d.m.Y H:i:s', $time); // 27.07.2023 14:50:25

Прибавить к дате 10 минут

$time = time() + 600; echo date('d.m.Y H:i:s', $time); // 27.07.2023 15:00:15 /* или */ $time = strtotime('+10 minutes', time()); echo date('d.m.Y H:i:s', $time); // 27.07.2023 15:00:15

Прибавить к дате 1 час

$time = time() + 3600; echo date('d.m.Y H:i:s', $time); // 27.07.2023 15:50:15 /* или */ $time = strtotime('+1 hours', time()); echo date('d.m.Y H:i:s', $time); // 27.07.2023 15:50:15

Прибавить к дате 1 день

$time = time() + 86400; echo date('d.m.Y H:i:s', $time); // 28.07.2023 14:50:15 /* или */ $time = strtotime('+1 days', time()); echo date('d.m.Y H:i:s', $time); // 28.07.2023 14:50:15

Прибавить к дате неделю

$time = strtotime('+1 week', time()); echo date('d.m.Y H:i:s', $time); // 03.08.2023 14:50:15

Прибавить к дате месяц

$time = strtotime('+1 month', time()); echo date('d.m.Y H:i:s', $time); // 27.08.2023 14:50:15

Прибавить к дате год

$time = strtotime('+1 year', time()); echo date('d.m.Y H:i:s', $time); // 27.07.2024 14:50:15

Сколько прошло

Сколько прошло c 8:00

$date = date('d.m.Y 08:00'); $diff = time() - strtotime($date); echo round($diff / 3600, 1); // 6,8 часов

Сколько прошло c понедельника этой недели

$time = strtotime('monday'); $diff = time() - $time; echo round($diff / 3600); // 87 часов echo round($diff / 86400, 1); // 3,6 дней

*Дни недели: monday, tuesday, wednesday, thursday, friday, saturday, sunday.

Сколько прошло c начала года

$date = date('01.01.Y 00:00:00'); $diff = time() - strtotime($date); echo intval($diff / 86400); // 207 дней // или echo date('z'); // 207

Сколько прошло c определённой даты

$date = '10.08.2016'; $diff = time() - strtotime($date); echo round($diff / 3600); // 61023 часов echo round($diff / 86400); // 2543 дней

Сколько остается

Сколько остается до 23:00

$time = strtotime(date('d.m.Y 23:00')); $diff = $time - time(); echo round($diff / 3600, 1); // 8,2 часов

Сколько остается до конца недели

$date = strtotime('next sunday, 23:59'); $diff = $date - time(); echo round($diff / 3600); // 81 часов echo round($diff / 86400); // 3 дней

*Дни недели: monday, tuesday, wednesday, thursday, friday, saturday, sunday.

Сколько остается до конца месяца

$time = strtotime(date('Y-m-t 23:59')); $diff = $time - time(); echo round($diff / 3600); // 105 часов echo round($diff / 86400); // 4 дней

Сколько остается до конца года

$time = strtotime(date('Y-12-31 23:59')); $diff = $time - time(); echo round($diff / 3600); // 3777 часов echo round($diff / 86400); // 157 дней

Сколько остается до определенной даты

$date = '10.08.2025'; $diff = strtotime($date) - time(); echo round($diff / 3600); // 17865 часов echo round($diff / 86400); // 744 дней

Время между датами

Количество часов между датами

$date_1 = '01.01.2021 10:00'; $date_2 = '10.03.2021 18:00'; $seconds = abs(strtotime($date_1) - strtotime($date_2)); echo round($seconds / 3600); // 1640

Количество дней между датами

$date_1 = '01.01.2021 10:00'; $date_2 = '10.03.2021 18:00'; $seconds = abs(strtotime($date_1) - strtotime($date_2)); echo round($seconds / 86400, 1); // 68,3

Количество месяцев между датами

$date_1 = strtotime('01.01.2021 10:00'); $date_2 = strtotime('10.03.2021 18:00'); $months = 0; while (strtotime('+1 month', $date_1) < $date_2) < $months++; $date_1 = strtotime('+1 month', $date_1); >$days = round(($date_2 - $date_1) / (60 * 60 * 24)); echo $months . ' месяца, ' . $days . ' дней'; // 2 месяца, 9 дней

Комментарии 2

Специально не поленился и авторизовался, чтобы выразить благодарность авторам сайта, молодцы ребята! Неоднократно на вашем сайте получал именно нужную инфу, у вас все примеры разжеваны, с разными вариантами, не то что где нибудь найдешь вроде то, что тебе нужно и потом полдня думаешь, как под свою задачу это допилить. В данном случае мне нужно было кол-во дней между датами, при чем число должно быть дробным — то есть 3.6 дня, например. У вас нашел, скопировал, и вставил (только имена переменных поменял), все. Именно то, что нужно. И так бывало уже не раз. В общем, спасибо, и обязательно продолжайте в том же духе!

Читайте также:  Nginx with php windows

Авторизуйтесь, чтобы добавить комментарий.

Другие публикации

Как настроить Last-Modified

Заголовок Last-Modified помогает оптимизировать загрузку web-страниц и облегчить работу поисковым роботам.

Источник

Дата и время в PHP

Одна из самых востребованных функций, которая используется практически на каждом сайте — это функция даты date( . ). Функция дата нужна и на больших новостных сайтах, и на маленьких личных блогах. Но вывод даты в одном формате — это далеко не единственное предназначение этой функции.

Функция даты в PHP

Давайте попробуем поэкспериментировать с этой функцией и выведем даты в совершенно разных форматах. В том числе не текущие даты, а даты через несколько дней, часов или секунд.

  • d — номер дня в месяце. Если меньше 10, то с нулём: «09», «05»
  • m — номер месяца. Если меньше 10, то с нулём: «09», «05»
  • Y — год, 4 цифры.
  • y — год, две цифры.
  • n — номер месяца. Без первого нуля, если меньше 10
  • j — номер дня в месяце. Без первого нуля, если меньше 10
  • H — часы в 24-часовом формате. Если меньше 10, то с нулём: «09», «05»
  • s — секунды. Если меньше 10, то с нулём: «09», «05»
  • i — минуты. Если меньше 10, то с нулём: «09», «05»
  • z — номер дня от начала года.
  • w — день недели (0 — воскресенье, 1 — понедельник и т.д.).
  • h — часы в 12-часовом формате
  • L — 1, если високосный год, 0, если не високосный.
  • W — порядковый номер недели года.
  • U — количество секунд, прошедших с 1 января 1970 года (то есть timestamp).

В результате выполнения такого кода мы узнаем дату и время в формате «ДД.ММ.ГГГГ ЧЧ:ММ:СС» через 3 дня. Или говоря в секундах, через 3600 * 24 * 3 секунд. Можно не только прибавлять, но и отнимать секунды, чтобы получить дату в прошлом. Такой способ вычисления даты является одним из самых простых, но для полноценного использования ещё нужная функция, которая переводит дату из любого формата в timestamp. Такая функция есть и называется strtotime( ). В качестве аргумента она принимает дату в любом формате. Но лучше использовать очевидные форматы типа «ДД.ММ.ГГГГ ЧЧ:ММ:СС». Тогда она правильно разберётся, что относится к году, а что ко дню. Попробуем её на практике:

Читайте также:  Css generator images with

Источник

date() – форматирование даты PHP

date($format, $timestamp) – форматирует дату/время по шаблону, где:

Результат работы функции зависит от настроек часового пояса, установить его можно следующем образом:

Основные параметры шаблона

Символ Описание Пример возвращаемого значения
День
j День месяца без ведущего нуля от 1 до 31
d День месяца, 2 цифры с ведущим нулём от 01 до 31
l Полное наименование дня недели от Sunday до Saturday
D День недели, 3 символа от Mon до Sun
z Порядковый номер дня в году От 0 до 365
Неделя
N Порядковый номер дня недели от 1 (понедельник)
до 7 (воскресенье)
W Порядковый номер недели года Например: 42 (42-я неделя года)
Месяц
n Порядковый номер месяца без ведущего нуля от 1 до 12
m Порядковый номер месяца с ведущим нулём от 01 до 12
F Полное название месяца от January до December
M Сокращенное наименование месяца, 3 символа от Jan до Dec
t Количество дней в месяце от 28 до 31
Год
Y Год, 4 цифры 2019
y Год, 2 цифры 19
Время
g Часы в 12-часовом формате без ведущего нуля от 1 до 12
h Часы в 12-часовом формате с ведущим нулём от 01 до 12
G Часы в 24-часовом формате без ведущего нуля от 0 до 23
H Часы в 24-часовом формате с ведущим нулём от 00 до 23
i Минуты с ведущим нулём от 00 до 59
s Секунды с ведущим нулём от 00 до 59
v Миллисекунды 123
Полная дата/время
c Дата в формате ISO 8601 2004-02-12T15:19:21+00:00
r Дата в формате RFC 2822 Thu, 21 Dec 2000 16:01:07 +0200

дд.мм.ггг (dd.mm.yyyy)

Самый распространенные форматы: dd.mm.yyyy и dd.mm.yyyy hh:ss .

echo date('d.m.Y'); // 27.07.2023 echo date('d.m.Y H:i'); // 27.07.2023 14:50 echo date('d.m.Y H:i:s'); // 27.07.2023 14:50:06

гггг-мм-дд (yyyy.mm.dd)

Используется в MySQL тип поля DATE.

Источник

Оцените статью