ProfiPHPProfiPHP
Категория: Функции для работы с датой и временем

Функция Mktime

Функция Mktime возвращает метку времени Unix для заданной даты.
int mktime ([ int $hour = date("H") [, int $minute = date("i") [, int $second = date("s") [, int $month = date("n") [, int $day = date("j") [, int $year = date("Y") [, int $is_dst = -1 ]]]]]]] )
Параметр Hour определяет количество часов, прошедших с начала дня, указанного параметрами Month, Day и Year. Отрицательные значения определяют часы до полуночи указанного дня. Значения большие 23 определяют соответствующий час следующего дня (или дней).

Параметр Minute определяет количество минут, прошедших от начала часа, указанного параметром Hour. Отрицательные значения определяют минуты предыдущего часа. Значения большие 59 определяют соответствующие минуты следующего часа (или часов).

Параметр Second определяет количество секунд, прошедших от начала минуты, указанной параметром Minute. Отрицательные значения определяют секунды из предыдущей минуты. Значения большие 59 определяют соответствующие секунды следующей минуты (или минут).

В параметре Month указывается количество месяцев, прошедших с конца предыдущего года. Значения от 1 до 12 определяют нормальные обычные календарные месяцы года. Отрицательные значения определяют месяца предыдущего года в обратном порядке. Значения больше 12 определяют соответствующий месяц в следующем году (или годах).

В параметре Day указывается количество дней, прошедших с конца предыдущего месяца. Значения от 1 до 28, 29, 30 или 31 (в зависимости от месяца) определяют нормальные дни соответствующего месяца. Отрицательные значения определяют дни предыдущего месяца, таким образом, 0 является последним днем предыдущего месяца, -1 - предпоследним днем предыдущего месяца и т.д. Значения большие количества дней соответствующего месяца определяют соответствующий день следующего месяца (или месяцев).

В параметре Year указывается номер года двумя или четырьмя цифрами, причем значения между 0-69 будут трактованы как 2000-2069, а между 70-100 - как 1970-2000.

Параметр Is_dst может быть установлен в 1, если заданной дате соответствует летнее время (DST), 0 в противном случае, или -1 (значение по умолчанию), если неизвестно, действует ли летнее время на заданную дату. Начиная с версии PHP 5.1.0 этот параметр более не рекомендуется к использованию и был удален в PHP 7.0.0. Вместо этого рекомендуется устанавливать соответствующую временную зону функцией Date_default_timezone_set.

Функция Mktime возвращает метку времени Unix, соответствующую дате и времени, заданным аргументами. Метка времени - это целое число, равное разнице в секундах между заданной датой/временем и началом Эпохи Unix (The Unix Epoch, 1 января 1970 00:00:00 GMT).

Аргументы могут быть опущены в порядке справа налево. В этом случае их значения по умолчанию равны соответствующим компонентам локальной даты/времени.

Начиная с версии PHP 5.1, если Mktime вызывается без аргументов, то будет сгенерировано замечание уровня E_STRICT. Используйте вместо этого функцию Time:
Strict Standards: mktime(): You should be using the time() function instead in file..php on line ...

Функцию Mktime удобно использовать для выполнения арифметических операций с датами, так как она вычисляет верные значения при некорректных аргументах.

Пример использования функции:
echo mktime( 0, 0, 0, 12, 22, 2015 );
echo date('Y-m-d', mktime( 0, 0, 0, 12, 22, 2015 ) );
Результат выполнения примера:
1450735200
2015-12-22

Добавить комментарий

Имя:
Текст комментария: