| 5.1.0 | Примеры
Пример #1 Примеры использования функции date()
// установка временной зоны по умолчанию. Доступно начиная с версии PHP 5.1
date_default_timezone_set ( ‘UTC’ );
// выведет примерно следующее: Monday
echo date ( «l» );
// выведет примерно следующее: Monday 8th of August 2005 03:12:46 PM
echo date ( ‘l jS \of F Y h:i:s A’ );
Чтобы запретить распознавание символа как форматирующего, следует экранировать его с помощью обратного слеша. Если экранированный символ также является форматирующей последовательностью, то следует экранировать его повторно.
Пример #2 Экранирование символов в функции date()
Пример #3 Пример совместного использования функций date() и mktime()
Данный способ более надежен, чем простое вычитание и прибавление секунд к метке времени, поскольку позволяет при необходимости гибко осуществить переход на летнее/зимнее время.
Пример #4 Форматирование с использованием date()
// Предположим, что текущей датой является 10 марта 2001, 5:16:18 вечера,
// и мы находимся во временной зоне Mountain Standard Time (MST)
$today = date ( «F j, Y, g:i a» ); // March 10, 2001, 5:16 pm
$today = date ( «m.d.y» ); // 03.10.01
$today = date ( «j, n, Y» ); // 10, 3, 2001
$today = date ( «Ymd» ); // 20010310
$today = date ( ‘h-i-s, j-m-y, it is w Day’ ); // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
$today = date ( ‘\i\t \i\s \t\h\e jS \d\a\y.’ ); // it is the 10th day.
$today = date ( «D M j G:i:s T Y» ); // Sat Mar 10 17:16:18 MST 2001
$today = date ( ‘H:m:s \m \i\s\ \m\o\n\t\h’ ); // 17:03:18 m is month
$today = date ( «H:i:s» ); // 17:16:18
$today = date ( «Y-m-d H:i:s» ); // 2001-03-10 17:16:18 (формат MySQL DATETIME)
?>
Примечания
Смотрите также
Источник
Дата и время в PHP
В распределенных системах, таких, как Интернет, время играет особую роль. Из-за незначительного расхождения системных часов игрок на рынке Forex может потерять десятки тысяч долларов в течение нескольких минут; система деловой разведки ошибется в составлении прогноза; серверы NNTP в процессе синхронизации потеряют важную информацию, нужную пользователю и т.д.
PHP-функции для работы с датой и временем
PHP содержит множество функций для работы с датой и временем. Наиболее употребимыми являются:
time() Возвращает текущее абсолютное время. Это число равно количеству секунд, которое прошло с полуночи 1 января 1970 года (с начала эпохи UNIX). getdate( ) Считывает информацию о дате и времени. Возвращает ассоциативный массив, содержащий информацию по заданному или по текущему (по умолчанию) времени. Массив содержит следующие элементы:
| seconds | Секунды (0-59) |
| minutes | Минуты (0-59) |
| hours | Часы (0-23) |
| mday | День месяца (1-31) |
| wday | День недели (0-6), начиная с воскресенья |
| mon | Месяц (1-12) |
| year | Год |
| yday | День года (0-365) |
| weekday | Название дня недели (например, Friday) |
| month | Название месяца (например, January) |
| 0 | Абсолютное время |
Пример 1
РЕЗУЛЬТАТ ПРИМЕРА 1:
seconds = 12
minutes = 41
hours = 0
mday = 5
wday = 5
mon = 11
year = 2021
yday = 308
weekday = Friday
month = November
0 = 1636062072
Сегодня: 5.11.2021
date() Форматирование даты и времени. Аргументы: строка формата и абсолютное время. Второй аргумент необязателен. Возвращает строку с заданной или текущей датой в указанном формате. Строка формата может содержать следующие коды:
Любая другая информация, включенная в строку формата, будет вставлена в возвращаемую строку. Если в строку формата нужно добавить символы, которые сами по себе являются кодами формата, то перед ними надо поставить обратную косую черту «\». Символы, которые становятся кодами формата при добавлении к ним обратной косой, нужно предварять двумя косыми. Например, если необходимо добавить в строку «n», то надо ввести «\\n», поскольку «\n» является символом новой строки.
Пример 2
РЕЗУЛЬТАТ ПРИМЕРА 2:
Сегодня 05.11.21 00:41
часы
минуты
секунды
месяц
день месяца
год
Пример 3
РЕЗУЛЬТАТ ПРИМЕРА 3:
22 January 1971, at 1.30 pm, Friday
Внимание! Дата может находиться в допустимом диапазоне, но остальные функции работы с датами не примут это значение. Так, нельзя использовать mktime() для годов до 1902, а также следует использовать ее осторожно для годов до 1970.
Пример 4
РЕЗУЛЬТАТ ПРИМЕРА 4:
Friday 05 November 2021 00:41
Сегодня Friday 05 November 2021 00:41:12
MSK
Источник
Работа с датами в PHP
Учебник PHP
Практика
Важное
Регулярки
Работа с htaccess
Файлы, папки
Сессии и куки
Работа с БД
Практика по работе с БД в PHP
Перед чтением см. новые уроки раздела «Важное», которые появились выше.
Практика
Движок PHP
Продвинутые БД
Аутентификация
Практика
ООП и MVC
Абстрактные классы и интерфейсы
Трейты
ООП Магия
Практика
Практика: классы как набор методов
Для работы с датами в PHP применяются различные функции. Мы начнем изучение с функции time.
Функция time, формат timestamp
Функция time возвращает разницу в секундах между 1-го января 1970 года и текущим моментом времени. Такое представление даты называется форматом timestamp.
Зачем нужен timestamp?
Время в формате timestamp используется для того, чтобы найти разницу между датами в секундах.
С помощью функции time мы можем получить только текущий момент времени. Чтобы получить timestamp за любую дату следует использовать функцию mktime:
Функция mktime
Функция mktime работает аналогично функции time, но, в отличие от нее, принимает параметры: mktime(час, минута, секунда, месяц, день, год) (обратите внимание на то, что месяц и день переставлены местами ). Посмотрите примеры работы:
Полученная разница в секундах будет выглядеть так: 686662877 (обновите страницу и это число поменяется).
Вооружившись знаниями о том, что такое формат timestamp (он нам еще понадобится в дальнейшем), изучим более полезные функции для работы с датами, например, функцию date.
Функция date
Функция date выводит текущие дату и время в заданном формате.
Формат задается управляющими командами (английскими буквами), при этом можно вставлять любые разделители между ними (дефисы, двоеточие и так далее).
Примеры работы с date:
Второй параметр функции date
Функция date имеет второй необязательный параметр, который принимает момент времени в формате timestamp. Если передать этот параметр, то функция date отформатирует не текущий момент времени, а тот, который передан вторым параметром. Этот timestamp можно получить, к примеру, через mktime (но не обязательно):
Функция strtotime
Следующая полезная функция, которую мы разберем, называется strtotime.
К примеру, я могу передать ей строку ‘2025-12-31’ и функция сама разберет, где тут год, где месяц, а где день, и вернет эту дату в формате timestamp.
Все форматы можно посмотреть тут.
Следующий код вернет дату предыдущего понедельника:
Как добавить или отнять дату
Пример 1
Давайте создадим объект с датой за 2025 год, 12 месяц, 31 день, затем прибавим к ней 1 день и выведем в формате ‘день.месяц.год’
Результат выполнения кода:
Пример 2
Давайте создадим объект с датой за 2025 год, 12 месяц, 31 день, затем прибавим к ней 3 дня и выведем в формате ‘день.месяц.год’
Результат выполнения кода:
Пример 3
Давайте создадим объект с датой за 2025 год, 12 месяц, 31 день, затем прибавим к ней 3 дня и 1 месяц и выведем в формате ‘день.месяц.год’
Результат выполнения кода:
Пример 4
Давайте создадим объект с датой за 2025 год, 1 месяц, 1 день, затем отнимем от нее 1 день и выведем в формате ‘день.месяц.год’
Результат выполнения кода:
Что вам делать дальше:
Приступайте к решению задач по следующей ссылке: задачи к уроку.
Источник
PHP | Дата и время
В этом уроке рассмотрм, как на практике использовать функции PHP по получению даты и времени, а также рассмотрим способы вывода и форматирования даты и времени. Функции PHP, обрабатывающие дату и время, позволяют получать дату и время с того сервера, на котором выполняется сценарий. Также эти функции позволяют нам редактировать и форматировать полученные временные значения перед их отображением (выводом) на экран.
Функция PHP date()
Функция date() выводит текущие дату и время в заданном формате. Также функция может конвертировать формат отметки времени (временная метка, метка времени или timestamp) в удобочитаемый формат.
Синтаксис
Параметры функции date():
Примечание: Отметка времени — это последовательность символов, обозначающая дату и / или время, когда произошло определенное событие.
Обязательный параметр format функции date() указывает, как форматировать дату (или время). Формат задается управляющими командами (латиницей), при этом можно вставлять любые разделители между ними (дефисы, двоеточие и так далее).
Ниже представлена таблица с расшифровкой некоторых символов в строке format :
| Символ в строке format | Описание | Пример возвращаемого значения |
|---|
| День | — | — |
| d | День месяца с 2-мя цифрами | от 01 до 31 |
| D | День недели в текстовом формате, 3 символа | от Mon до Sun |
| z | Порядковый номер дня в году (начиная с 0) | От 0 до 365 |
| Месяц | — | — |
| F | Полное название месяца, например, January или March | от January до December |
| m | Порядковый номер месяца, 2 цифры | от 01 до 12 |
| M | Сокращенное название месяца, 3 символа | от Jan до Dec |
| Год | — | — |
| Y | Порядковый номер года, 4 цифры | Примеры: 1999, 2019 |
| y | Порядковый номер года, 2 цифры | Примеры: 99, 19 |
| Время | — | — |
| a | Ante meridiem (лат. «до полудня») или Post meridiem (лат. «после полудня») в нижнем регистре | am или pm |
| A | Ante meridiem или Post meridiem в верхнем регистре | AM или PM |
| g | Часы в 12-часовом формате | от 1 до 12 |
| G | Часы в 24-часовом формате | от 0 до 23 |
| h | Часы в 12-часовом формате | от 01 до 12 |
| H | Часы в 24-часовом формате, 2 цифры | от 00 до 23 |
| i | Минуты, 2 цифры | от 00 до 59 |
| s | Секунды, 2 цифры | от 00 до 59 |
Ниже представлены некоторые примеры получения фактической информации о дате и времени:
Источник