PHP 5 Дата и время
Курс по основам языка программирования PHP.
W3Schools на русском языке. Уроки для начинающих
PHP функция date()
используется для форматирования даты и/или времени.
PHP функция Date()
PHP функция date()
форматирует метку времени для более удобочитаемой даты и времени.
Синтаксис
date(format,timestamp)
Параметр | Описание |
---|---|
format | Обязательно. Определяет формат отметки времени |
timestamp | Необязательно. Определяет метку времени. По умолчанию текущая дата и время |
Отметка времени - это последовательность символов, обозначающая дату и/или время, когда произошло определенное событие.
Получить простую дату
Обязательный параметр format функции date() указывает, как форматировать дату (или время).
Вот некоторые символы, которые обычно используются для дат:
- d - Представляет день месяца (с 01 по 31)
- m - Представляет месяц (с 01 по 12)
- Y - Представляет год (в четыре цифры)
- l (в нижнем регистре 'L') - Представляет день недели
Другие символы, такие как "/", "."" Или "-" также могут быть вставлены между символами, чтобы добавить дополнительное форматирование.
Пример ниже форматирует сегодняшнюю дату тремя различными способами:
Пример
<?php
echo "Today is " . date("Y/m/d") . "<br>";
echo "Today is " . date("Y.m.d") . "<br>";
echo "Today is " . date("Y-m-d") . "<br>";
echo "Today is " . date("l");
?>
Выполнить пример »
PHP - Автоматический год авторского права
Используйте функцию date()
для автоматического обновления года авторских прав на вашем веб-сайте:
Получить простое время
Вот некоторые символы, которые обычно используются для времен:
- H - 24-часовой формат часа (от 00 до 23)
- h - 12-часовой формат часа с ведущими нулями (от 01 до 12)
- i - Минуты с ведущими нулями (от 00 до 59)
- s - Секунды с ведущими нулями (от 00 до 59)
- a - В нижнем регистре до полудня и после полудня (am или pm)
В приведенном ниже примере выводится текущее время в указанном формате:
Обратите внимание, что PHP функция date() будет возвращать текущую дату/время сервера!
Получите ваш часовой пояс
Если код вернул вам не то время, возможно потому, что ваш сервер находится в другой стране или настроен на другой часовой пояс.
Если вам нужно точное время в соответствии с конкретным местоположением, вы можете установить используемый часовой пояс.
В приведенном ниже примере для часового пояса установлено значение «America/New_York», а затем выводится текущее время в указанном формате:
Пример
<?php
date_default_timezone_set("America/New_York");
echo "The time is " . date("h:i:sa");
?>
Выполнить пример »
Создать дату с PHP mktime()
Необязательный параметр timestamp в функции date() указывает метку времени. Если вы не укажете метку времени, будут использованы текущие дата и время (как показано в примерах выше).
Функция mktime()
возвращает метку времени Unix для даты. Временная метка Unix содержит количество секунд между эпохой Unix (1 января 1970 г., 00:00:00 по Гринвичу) и указанным временем.
Синтаксис
mktime(час,минута,секунда,месяц,день,год)
В приведенном ниже примере создается дата и время из ряда параметров в функции mktime()
:
Пример
<?php
$d=mktime(11, 14, 54, 8, 12, 2014);
echo "Created date is " . date("Y-m-d h:i:sa", $d);
?>
Выполнить пример »
Создать дату из строки с PHP strtotime()
Функция PHP strtotime()
используется для преобразования читаемой человеком строки во время Unix.
Синтаксис
strtotime(time,now)
В приведенном ниже примере создается дата и время из функции strtotime()
:
Пример
<?php
$d=strtotime("10:30pm April 15 2014");
echo "Created date is " . date("Y-m-d h:i:sa", $d);
?>
Выполнить пример »
PHP довольно умен для преобразования строки в дату, поэтому вы можете ввести различные значения:
Пример
<?php
$d=strtotime("tomorrow");
echo date("Y-m-d h:i:sa", $d) . "<br>";
$d=strtotime("next Saturday");
echo date("Y-m-d h:i:sa", $d) . "<br>";
$d=strtotime("+3 Months");
echo date("Y-m-d h:i:sa", $d) . "<br>";
?>
Выполнить пример »
Однако strtotime()
не идеален, поэтому не забудьте проверить строки, которые вы там вставили.
Больше примеров даты
В приведенном ниже примере выводятся даты следующих шести суббот:
Пример
<?php
$startdate = strtotime("Saturday");
$enddate = strtotime("+6 weeks", $startdate);
while ($startdate < $enddate) {
echo date("M d", $startdate) . "<br>";
$startdate = strtotime("+1 week", $startdate);
}
?>
Выполнить пример »
В приведенном ниже примере показано количество дней до 4 июля:
Пример
<?php
$d1=strtotime("July 04");
$d2=ceil(($d1-time())/60/60/24);
echo "There are " . $d2 ." days until 4th of July.";
?>
Выполнить пример »
PHP Даты. Полный справочник
Для полного ознакомления со всеми функциями даты перейдите на PHP Даты. Полный Справочник.
Справочник содержит краткое описание и примеры использования для каждой функции!
Не выкладывайте свой код непосредственно в комментариях, он отображается некорректно. Воспользуйтесь такими сервисами, как jsfiddle.net, codepen.io, liveweave.com, jsbin.com, сохраните код на любом из этих сервисов и в комментариях дайте на него ссылку. Так будет виден и код, и результат.