English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP Основной Учебник

PHP Уровеньный Учебник

PHP & MySQL

PHP Референс Мануал

Дата и время PHP

В этом руководстве вы узнаете, как извлекать или форматировать дату и время в PHP.

Функция Date() PHP

Функция date() PHP преобразует временной штамп в более читаемый формат даты и времени.

Компьютер хранит дату и время в формате, называемом временной меткой UNIX, которая измеряется в секундах с начала эпохи Unix (в полдень по Гринвичу 1 января 1970 года, то есть 00:00:00 GMT 1 января 1970 года).

Такой формат для человека не очень удобен, поэтому PHP преобразует временной штамп в человеческий формат и преобразует дату из вашего символа в временной штамп, который компьютер может понять. Синтаксис функции можно использовать.

date(format, timestamp)

Функция date() вformatПараметр обязателен, чтобы определить формат возвращаемой даты и времени. Однако,timestampЭто опциональный параметр, если его не включить, то будет использоваться текущая дата и время. Следующее предложение показывает сегодняшнюю дату:

<?php
$today = date("d/m/Y");
echo $today;
?>
Тестирование看看‹/›

Обратите внимание:Функция PHP date() возвращает текущую дату и время, основываясь на встроенном часовом механизме веб-сервера, выполняющего скрипт.

Форматирование даты и времени с помощью PHP

Параметр format функции date() на самом деле является строкой, которая может содержать несколько символов и позволяет создавать строку даты с различными компонентами даты и времени, такими как день недели, утро или вечер. Вот некоторые часто используемые символы форматирования в строке формата, связанных с датой:

  • d - обозначение дня месяца; с führendыми Zero (01 или 31)

  • D - обозначение аббревиатуры дня недели (понедельник до воскресенье)

  • m - обозначение месяца, с führendыми Zero (01 или 12)

  • M - обозначение аббревиатуры месяца (Jan до Dec)

  • y - два цифры для обозначения года (08 или 14)

  • Y - четыре цифры для обозначения года (2008 или 2014)

Вы можете разделить части даты другими символами (например, дефисом (-), точкой (.), косой чертой (/) или пробелом) для добавления дополнительного визуального форматирования.

<?php
echo "d/m/Y" . "<br>";
echo "d-m-Y" . "<br>";
echo "d.m.Y";
?>
Тестирование看看‹/›

Совет:Вы можете использовать функцию PHP date() для автоматического обновления заявлений о правах авторства на вашем сайте, например: Copyright © 2010-<?php echo date("Y")?>.

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

  • h - показывает часы в 12-часовом формате, с führendыми Zero (01 до 12)

  • H - показывает часы в 24-часовом формате, с führendыми Nullen (00 до 23)

  • i - означает минуты, с führenden Nullen (00 до 59)

  • s - означает секунды, с führenden Nullen (00 до 59)

  • a - означает нижний регистр "утро" и "вечер" (утро или вечер)

  • A - означает верхний регистр "утро" и "вечер" (утро или вечер)

В следующем примере PHP-кода дата отображается в различных форматах:

<?php
echo "h:i:s" . "<br>";
echo "F d, Y h:i:s A" . "<br>";
echo "h:i a";
?>
Тестирование看看‹/›

Функция PHP time()

Функция time() используется для получения текущего времени в виде временного штампа Unix (число секунд с начала эпохи Unix: 1 января 1970 года 00:00:00 GMT).

<?php
//Время выполнения: 2014-03-05 07:19:18
$timestamp = time();
echo($timestamp);
?>
Тестирование看看‹/›

upper example produces the following output.

1394003958

Перевод timestamps в читаемый людьми формат дату можно получить, передавating timestamp функции date(), которую было введено ранее.

<?php
$timestamp = 1394003958;
echo(date("Y-m-d H:i:s", $timestamp));
?>
Тестирование看看‹/›

upper example produces the following output.

2014-03-05 07:19:18

Функция mktime() в PHP

Функция mktime() используется для создания timestamps на основе специфических дат и времени. Если не предоставлены дата и время, возвращается timestamp текущей даты и времени.

Синтаксис функции mktime() можно выразить следующим образом:

mktime(hour, minute, second, month, day, year)

Следующий пример показывает timestamp, соответствующий времени下午 3:20:12 10 мая 2014 года:

<?php
//Создание timestamps для определенной даты
echo mktime(15, 20, 12, 5, 10, 2014);
?>
Тестирование看看‹/›

upper example produces the following output.

1399735212

Обратите внимание:Вы можете сохранять любое количество параметров, а использовать значения, соответствующие текущему времени. Если все параметры пропущены, функция mktime() возвращает UNIX timestamp, соответствующий текущей дате и времени, как и function time().

Функция mktime() может использоваться для поиска названия дня недели, соответствующего определенной дате. Для этого просто используйте символ 'l' ('L' в нижнем регистре) в вашем временной метке, как показано в следующем примере, он показывает этот день: 1 апреля 2014 года:

<?php
//Получение названия дня недели для определенной даты
echo date('l', mktime(0, 0, 0, 4, 1, 2014));
?>
Тестирование看看‹/›

upper example produces the following output.

Tuesday

Функция mktime() также может использоваться для поиска определенной даты в будущем в определенный период. Как показано в следующем примере, она показывает дату через 30 месяцев после текущей даты?

<?php
//Исполнение даты 5 марта 2014 года
$futureDate = mktime(0, 0, 0, date("m")+30, date("d"), date("Y"));
echo date("d/m/Y", $futureDate);
?>
Тестирование看看‹/›

upper example produces the following output.

05/09/2016

Полный справочник по датам PHP

Пожалуйста, посмотрите раздел справки по функциям даты/времени PHP, чтобы получить полный список всех доступных функций даты и времени в PHP.