PHP/Работа с датой и временем
В языке PHP есть специальные функции для получения текущих даты и времени, также имеется возможность их форматирования. Это позволяет получать дату и время с сервера, где выполняется сценарий, и при необходимости перед выводом на экран изменять формат на более удобный и подходящий для решаемых задач.
Функция date
правитьФункция date() выводит текущие дату и время в заданном формате и имеет следующий синтаксис: date(format). Параметр format представляет собой шаблон, в соответствии с которым будет отформатирована и возвращена дата.
Таблица с расшифровкой некоторых символов в строке format
правитьСимвол | Описание | Возвращаемое значение |
---|---|---|
День | ||
d | День месяца двумя цифрами | от 01 до 31 |
D | День недели в текстовом формате, 3 символа | от Mon до Sun |
z | Порядковый номер дня в году (начиная с 0) | От 0 до 365 |
Месяц | ||
F | Полное название месяца | от January до December |
m | Порядковый номер месяца, 2 цифры | от 01 до 12 |
M | Сокращенное название месяца, 3 символа | от Jan до Dec |
Год | ||
Y | Порядковый номер года, 4 цифры | Пример: 1999 |
y | Порядковый номер года, 2 цифры | Пример: 99 |
Время | ||
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 |
Пример:
<?php
echo "Текущая дата: " . date('d-m-Y');
?>
Запустите скрипт, чтобы увидеть результат работы.
Функция strtotime
правитьФункция strtotime() преобразует текстовое представление даты на английском языке в метку времени Unix. Параметром функции выступает строка с датой на английском языке, которая будет преобразована в надлежащий формат.
Пример использования:
<?php
$d=strtotime("May 25 2023");//получение метки времени Unix
echo date("Y-m-d D", $d);//форматированный вывод
?>
Запустив данный скрипт, вы увидите результат работы.
Функция date_default_timezone_set
правитьФункция date_default_timezone_set() устанавливает часовой пояс по умолчанию для всех функций даты и времени в скрипте, что необходимо в случае, если сервер, где расположен сайт, настроен для другого часового пояса. В такой ситуации просто использовать функцию date() не удастся - возвращаемое значение будет отлично от реального времени часового пояса пользователя.
Имеет следующий синтаксис: date_default_timezone_set( string $timezone_identifier ), параметр timezone_identifier представляет собой идентификатор временной зоны.
Пример:
<?php
date_default_timezone_set('Europe/Moscow');
echo "Текущее время в Москве " . date("h:i:sa");
?>
Запустите скрипт, чтобы увидеть результат работы.
Упражнения
править
Ссылки
править- PHP | Дата и время // PHP Учебник.wm-school.ru, 2021