11111

mktime

Пред.

След.

mktime

(PHP 3, PHP 4, PHP 5)mktime -- Возвращает метку времени для заданной даты

Description

int mktime ([int hour [, int minute [, int second [, int month [, int day [, int year [, int is_dst]]]]]]])

- Предепреждение: Обратите внимание на странный

порядок аргументов, отличающийся от порядка аргументов стандартной

функции Unix mktime() и делающий неудобной работу с необязательными

аргументами. Часто при написании скриптов путают порядок аргументов,

что приводит к ошибкам.

- Функция возвращает метку времени Unix, соответствующую дате и

времени, заданным аргументами.

Метка времени - это цело число, равное разнице в секундах между

заданной датой/временем и началом Эпохи Unix (The Unix Epoch, 1 января 1970 г).

- Аргументы могут быть опущены в порядке справа налево. Опущенные

аргументы считаются равными соответствующим компонентам локальной

даты/времени.

- Аргумент is_dst может быть установлен в 1,

если заданной дате соответствует летнее время, 0 в противном случае,

или -1 (значение по умолчанию), если неизвестно, действует ли летнеее

время на заданную дату. В последнем случае PHP пытается определить это

самостоятельно. Это можно привести к неожиданному результату

(который, тем не менее, не будет неверным).

Замечание:

Аргумент is_dst был добавлен в версии 3.0.10.

- Функцию mktime() удобно использовать для

выполнения арифметических операций с датами, так как она вычисляет

верные значения при некорректных аргументах. Например, в следующем

примере каждая строка выведет "Jan-01-1998".

Пример 1. Пример использования функции mktime()

<?php

echo date("M-d-Y", mktime(0, 0, 0, 12, 32, 1997));

echo date("M-d-Y", mktime(0, 0, 0, 13, 1, 1997));

echo date("M-d-Y", mktime(0, 0, 0, 1, 1, 1998));

echo date("M-d-Y", mktime(0, 0, 0, 1, 1, 98));

?>

Year может быть двух- или четырехзначным

числом. Значения от 0 до 69 соответствуют 2000-2069, а 70-99

соответствуют 1970-1999 (в большинстве современных систем, где время

представляется 32-битным целым со знаком, допустимыми являются

значения year между 1901 и 2038).

-

Windows:

Ни одна из версий Windows не поддерживает отрицательные метки

времени. Поэтому для Windows допустимыми являются значения

year между 1970 и 2038.

- Последний день любого месяца можно вычислить как "нулевой" день

следующего месяца. Оба приведенных ниже примера выведут "Последний

день в феврале 2000 г: 29".

Пример 2. Last day of next month

<?php

$lastday = mktime(0, 0, 0, 3, 0, 2000);

echo strftime("Последний день в феврале 2000 г:: %d", $lastday);

$lastday = mktime(0, 0, 0, 4, -31, 2000);

echo strftime("Последний день в феврале 2000 г:: %d", $lastday);

?>

- Даты, в которых год, месяц и день равны 0, считаются неверными

(иначе им бы соответствовала дата 30.11.1999, что, согласитесь, было

бы довольно странно).

- См. также описание функций date() и time().

Пред.

Начало

След.

microtime

Уровень выше

strftime 22222

Free Web Hosting