Смекни!
smekni.com

Учебник php (стр. 13 из 26)

· "sec" - секунды

· "usec" - микросекунды

· "minuteswest" - смещение к западу от Гринвича, в минутах

· "dsttime" - тип dst коррекции (переход на летнее время)

strftime
Форматирует время согласно локальным установкам.

Синтаксис :
string strftime(string format [, int timestamp]);

Возвращает строку, отформатированную согласно данной форматной строке format и используя данную временную метку timestamp или текущее локальное время, если метка не задана.
Функцией setlocale() можно выставить язык, на котором будут выводиться названия месяцев и дней.
В форматной строке следует использовать следующие спецификаторы преобразований:

· %a - сокращенное название дня недели по умолчанию (Wed);

· %A - полное название дня недели по умолчанию (Wednesday);

· %b - сокращенное название месяца по умолчанию (Apr);

· %B - полное название месяца по умолчанию (April);

· %c - предпочтительное представление даты и времени (06/19/02 15:45:11);

· %C - номер века (год, деленный на 100 и без дробной части, от 00 до 99);

· %d - день месяца как десятичное число (в диапазоне от 0 до 31);

· %D - эквивалент %m/%d/%y;

· %e - число месяца (вместо незначащего нуля ставится пробел) (от 1 до 31);

· %h - аналог %b;

· %H - час как десятичное число в 24-часовом формате (в диапазоне от 00 до 23);

· %I - час как десятичное число в 12-часовом формате (в диапазоне от 01 до 12);

· %j - номер дня в году как десятичное число (в диапазоне от 001 до 366);

· %m - номер месяца как десятичное число (в диапазоне от 1 до 12);

· %M - минуты как десятичное число;

· %n - символ перехода на новую строку;

· %p - "am" или "pm" (до и после полудня) согласно текущему времени;

· %r - время в 12-часовом формате (a.m. или p.m.);

· %R - время в 24-часовом формате;

· %S - секунды как десятичное число;

· %t - символ табуляции;

· %T - текущее время, эквивалентно %H:%M:$S;

· %u - число дня в неделе (от 1 до 7) (понедельник - 1);

· %U - номер недели в году как десятичное число, начиная с первого Воскресенья в качестве первого дня первой недели;

· %V - номер недели в году по стандарту ISO 8601:1988 (от 1 до 53), где первая неделя - та, в которой насчитывается больше 3-х дней в текущем году;

· %W - номер недели в году как десятичное число, начиная с первого понедельника в качестве первого дня первой недели;

· %w - номер дня в неделе (от 0 до 6) (воскресенье - 0);

· %x - представление даты в системном формате без указания времени (06/13/02);

· %X - представление времени в системном формате без указания даты (15:34:54);

· %y - год как десятичное число без столетия (в диапазоне от 00 до 99);

· %Y - год как десятичное число, включая столетие;

· %Z - временная зона или название или сокращение;

· %% - символ "%".

setlocale ("LC_TIME", "C");print(strftime("%A in Finnish is "));setlocale ("LC_TIME", "fi");print(strftime("%A, in French "));setlocale ("LC_TIME", "fr");print(strftime("%A and in German "));setlocale ("LC_TIME", "de");print(strftime("A.\n"));

Форматирует локальное время согласно установкам locale.

getdate
Получает информацию о дате/времени.

Синтаксис :
array getdate(int timestamp);

Возвращает ассоциативный массив, содержащий информацию о дате со следующими элементами:

· "seconds" - секунды

· "minutes" - минуты

· "hours" - часы

· "mday" - день месяца

· "wday" - день недели, цифровой

· "mon" - месяц, цифровой

· "year" - год, цифровой

· "yday" - день года, цифровой; т.е. "299"

· "weekday" - день недели, текстовый, полный; т.е. "Friday"

· "month" - месяц, текстовый, полный; т.е. "January"

· 0 - "UNIX timestamp", полученныйаргумент.

print_r(getdate(time()));

Приведенный пример выведет следующее:

Array([seconds] => 14 [minutes] => 26 [hours] => 19 [mday] => 16 [wday] => 3 [mon] => 6 [year] => 2004 [yday] => 167 [weekday] => Wednesday [month] => June[0] => 1087399574)

gmdate
Получение даты в форматированной строке для времени GMT.

Синтаксис :
string gmdate(string format, int timestamp);

Аналогична функции date() за исключением того, что время возвращается в Гринвичском формате Greenwich Mean Time (GMT). Например, при запуске в Финляндии (GMT +0200), первая строка ниже напечатает "Jan 01 1998 00:00:00", в то время как вторая строка напечатает "Dec 31 1997 22:00:00".

echo date( "M d Y H:i:s",mktime(0,0,0,1,1,1998) );echo gmdate( "M d Y H:i:s",mktime(0,0,0,1,1,1998) );

gmstrftime
Форматирование локальных времени/даты.

Синтаксис :
string gmstrftime(string format, int timestamp);

Действие этой функции аналогично действию функции strftime() с тем отличием, что возвращается время по Гринвичу (GMT).
Например, при запуске в зоне (GMT -0500) первая строка бедт следующей: "Dec 31 1998 20:00:00", а вторая: " Jan 01 1999 01:00:00".

setlocale("LC_TIME", "en_US");echo strftime("%b %d %Y %H:%M:%S", mktime(20,0,0,12,31,98))."\n";echo gmstrftime("%b %d %Y %H:%M:%S", mktime(20,0,0,12,31,98))."\n";

mktime
Получает временную метку UNIX для даты.

Синтаксис :
int mktime([int hour] [,int minute] [,int second] [,int month] [,int day] [,int year] [, int is_dst]);

Возвращаетвременнуюметку Unix согласноданнымаргументам. Эта временная метка является целым числом, равным количеству секунд между эпохой Unix (1 Января 1970) и указанным временем.

Все парамеры это функции необязательны, но пропускать их можно только справо налево. Если какие-то параметры не заданы, на их место подставляются значения, соответствующие текущей дате.
Аргумент is_dst, указывает, осуществлен ли переход на летнее время (1) или нет (0); если не известно, то аргумент - (-1)

Функция возвращает timestamp, соответствующий указанной дате.

Правильность даты, переданной в параметрах, не проверяется. В случае некорректной даты ничего особенного не происходит - функция "делает вид", что ее не касается, и формирует соответствующий timestamp.

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) ); // неправильная дата

Выводит три одинаковых числа

gmmktime
Аналог функции time() для времени GMT.

Синтаксис :
int gmmktime(int hour, int minute, int second, int month, int day, int year [, int is_dst]);

Идентична mktime() за исключением того, что передаваемые параметры передают время по Гринвичу (GMT).

time
Получение времени в секунадх.

Синтаксис :
int time();

Возвращает текущее время, измеренное в числе секунд с эпохи Unix (1 Января 1970 00:00:00 GMT).
Этот формат данных принят в Unix как стандартный (называется "UNIX timestamp"): в частности, время последнего изменения файлов указывается именно в таком формате. Вообще говоря, почти все функции по работе со временеи имеют дело именно с таким его представлением (которое называется timestamp). То есть представление " количество секунд с 1 января 1970 года" весьма универсально и, что главное, - удобно.

echo time();

microtime
Возвращает текущую временную метку UNIX в микросекундах.

Синтаксис :
string microtime();

Возвращает строку "msec sec" где sec текущее время, измеренное в числе секунд с эпохи Unix (0:00:00 1 Января, 1970 GMT), а msec - это часть в микросекундах. Эти функции доступны только в операционных системах, поддерживающих системный вызов gettimeofday().
Но дело в том, что милисекунды в различных OC выглядят по разному. Например в Unix это действительно число микросекунд, а в Windows - непонятное значение.

echo microtime(); // в Windows выведет что-то типа 0.53033200 1012468870

strtotime
Лексическое преобразование строки времени в Unix timestamp.

Синтаксис :
int strtotime(string time [, int now]);

В аргументе time функция получает дату в англоязычном формате, а затем преобразует ее в целочисленный формат Unix timestamp.

echo strtotime("now")."\n";echo strtotime("10 September 2002")."\n";echo strtotime("+2 day")."\n";echo strtotime("+3 week")."\n";echo strtotime("+1 week 2 days 4 hours 34 seconds")."\n";

Логические функции определения типа переменной

is_scalar
Проверяет, является ли переменная простой.

Синтаксис :
bool is_scalar(mixed var)

Возвращает true, если var имеет скалярный тип (чила, строки, логические значения), но не комплексный (массивы или объекты).

is_null
Проверяет, является ли переменная пустой.

Синтаксис :
bool is_null(mixed var)

Возвращает true, если var не существует (или ей явно присвоено пустое значение null). Функция эквивалентна выражению:
(var===null или is_set(var)

is_numeric
Проверяет, является ли переменная числовой.

Синтаксис :
bool is_numeric(mixed var)

Возвращает true, если var имеет численный тип (integer, double), или строковой с числовым значением.

is_bool
Проверяет, является ли переменная логической.

Синтаксис :
bool is_bool(mixed var)

Возвращает true, если var имеет тип логического значения (TRUE или FALSE), а иначе - false.

is_int
Определяет, является ли переменная типа integer(целочисленной).

Синтаксис :
bool is_int(mixed var);

Возвращает true, если var имеет целочисленный тип.

is_integer
Определяет, является ли переменная типа integer.

Синтаксис :
bool is_integer(mixed var);

Возвращает true, если var является типа integer (целочисленной), или false в обратном случае.

is_long
Определяет, является ли переменная типа integer(целочисленной).

Синтаксис :
bool is_long(mixed var);

Возвращает true, если var имеет целочисленнй тип (integer, long), или false в обратном случае.

is_real
Определяет, является ли переменная типа real (дробной).

Синтаксис :
bool is_real(mixed var);

Возвращает true, если var типа real (дробная), или false в обратном случае.

is_float
Определяет, является ли переменная типа float (дробная).

Синтаксис :
bool is_float(mixed var);

Возвращает true, если var типа float (дробная), или false в обратном случае.

is_double
Определяет, является ли переменная типа double (дробная).

Синтаксис :
bool is_double(mixed var);

Возвращает true, если var является типа double (дробной), или false в обратном случае.

is_string
Определяет, является ли переменная строкой.

Синтаксис :
bool is_string(mixed var);

Возвращает true, если var - это строка, или false в обратном случае.