PHP Дата и Время: Функции time() и microtime()

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

time()

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

microtime()

Функция microtime() подобна time(), но возвращает секунды и микросекунды. Если передать true в качестве аргумента, она вернет секунды и микросекунды строкой.

Пример использования microtime() для измерения времени выполнения скрипта:

$start = microtime(true);

// ... ваш код ...

$end = microtime(true);
$time = $end - $start;
echo "Время выполнения скрипта: " . $time . " секунд";

microtime() полезна для измерения времени выполнения даже коротких скриптов. Для больших скриптов, время выполнения которых превышает несколько секунд, необходима оптимизация кода.

date()

Функция date() форматирует дату и время. Первый аргумент – строка-формат, определяющая вывод. Второй (необязательный) – метка времени (количество секунд с 1 января 1970 года).

Пример использования date():

echo date("Y-m-d H:i:s"); // Выведет текущую дату и время в формате YYYY-MM-DD HH:MM:SS
echo date("Y-m-d H:i:s", mktime(12, 35, 23, 12, 7, 2007)); // Выведет дату и время 7 декабря 2007 года 12:35:23

Подробное описание символов формата см. в документации PHP (например, на php.net). Основные символы: Y (год), m (месяц), d (день), H (часы), i (минуты), s (секунды). Остальные символы выводятся без изменений.

getdate()

Функция getdate() принимает количество секунд с 1 января 1970 года и возвращает ассоциативный массив с информацией о дате: секунды, минуты, часы, день, месяц, год и т.д.

Пример использования getdate():

$date = getdate(mktime(12, 35, 23, 12, 7, 2007));
print_r($date);

checkdate()

Функция checkdate() проверяет корректность даты. Принимает год, месяц и день. Возвращает true, если дата существует, и false в противном случае.

Пример использования checkdate():

echo checkdate(2, 28, 2012); // true
echo checkdate(2, 29, 2012); // false (2012 не високосный)

Функции time(), microtime(), date(), getdate() и checkdate() — основные инструменты работы с датами в PHP. Подробное описание см. в официальной документации PHP (например, на php.net). Часто используемые символы в date() лучше запомнить, а для редких случаев можно обратиться к документации.

Что будем искать? Например,программа