- •Содержание:
- •Математические функции : Функции округления
- •Математические функции : Случайные числа
- •Математические функции : Минимум и максимум
- •Математические функции : Степенные функции
- •Математические функции : Тригонометрия
- •Математические функции : Функции повышенной точности BCMath
- •Математические функции : Функции GMP. Арифметика
- •Математические функции : Функции GMP. Математика
- •Математические функции : Функции GMP
- •Математические функции : Функции GMP. Значения функции GMP
- •Математические функции : Функции GMP. Бинарные операции
- •Работа с массивами : Создание массива
- •Работа с массивами : Сортировка массивов
- •Работа с массивами : Курсор массива
- •Работа с массивами : Ключи и значения
- •Работа с массивами : Комплексная замена в строке
- •Работа с массивами : Работа с несколькими массивами
- •Работа с массивами : Получение и удаление части массива
- •Работа с массивами : Вставка/удаление элементов
- •Работа с массивами : Переменные и массивы
- •Строковые функции : Функции отрезания пробелов
- •Строковые функции : Поиск в тексте
- •Строковые функции : Функции сравнения
- •Строковые функции : Форматирование и вывод строк
- •Строковые функции : Составление/разбиение строк
- •Строковые функции : Работа с блоками текста
- •Строковые функции : Функции для преобразования символов
- •Строковые функции : Функции изменения регистра
- •Строковые функции : Установка локали (локальных настроек)
- •Строковые функции : Преобразование кодировок
- •Строковые функции : Функции форматных преобразований
- •Строковые функции : Функции URL
- •Строковые функции : Работа с бинарными данными
- •Строковые функции : Строковые суммы и хеш-функции
- •Символические ссылки. Жесткие ссылки
- •Функции даты и времени
- •Логические функции определения типа переменной
- •Функции переменных
- •Функции для работы с функциями
- •Календарные функции
- •Работа с файлами : Открытие файла
- •Работа с файлами : Закрытие файла
- •Работа с файлами : Чтение и запись
- •Работа с файлами : Положение указателя текущей позиции
- •Работа с файлами : Функции для определения типов файлов
- •Работа с файлами : Определение параметров файла
- •Работа с файлами : Функции для работы с именами файлов
- •Работа с файлами : Функции манипулирования целыми файлами
- •Работа с файлами : Другие функции
- •Функции для работы с каталогами : Манипулирование каталогами
- •Функции для работы с каталогами : Работа с записями
- •FTP : Работа с FTP-сервером
- •FTP : Работа файлами
- •Функции IMAP
- •Функции SNMP
- •Функции Vmailmgr
- •Сетевые функции
- •Отслеживание и обработка ошибок : Введение
- •Отслеживание и обработка ошибок : Функции обработки ошибок
- •Управление сессиями : Имя группы сессии
- •Управление сессиями : Идентификатор сессии
- •Управление сессиями : Другие функции
- •Управление сессиями : Обзор обработчиков
- •Управление сессиями : Про сессии и Cookies
- •Работа с WWW : Установка заголовков ответа
- •Работа с WWW : Получение заголовков запроса
- •Работа с WWW : Работа с Cookies
- •Работа с WWW : SSI и функция virtual()
- •Управление выводом : Введение
- •Управление выводом : Функции управления выводом
- •Управление исполнением сценария PHP : Дополнительные функции
- •Почтовые функции
- •Функции запуска программ
- •Функции динамической загрузки
- •Информационные функции
- •База данных MySQL : Работа с базами данных
- •Базы данных MySQL : Обработка результатов запроса
- •PDF-документы : Введение
- •PDF-документы : Открытие документа
- •PDF-документы : Работа с текстом
- •PDF-документы : Установка масштаба и системы координат
- •PDF-документы : Черчение и заполнение фигур
- •PDF-документы : Размещение рисунков
- •PDF-документы : Стиль документа
Синтаксис :
array lstat(string $filename)
Функция полностью аналогична вызову stat(), за исключением того, что если $filename задает не файл, а символическую ссылку, будет возвращена информация именно об этой ссылке (а не о файле, на который она указывает, как это делает stat()).
linkinfo
Функция возвращает значение поля "устройство" из результата, выдаваемого функцией lstat().
Синтаксис :
int linkinfo(string $linkname)
Ее обычно задействуют, если хотят определить, существует ли еще объект, на который указывает символическая ссылка в $linkname.
Функции даты и времени
checkdate
Проверяет правильность даты/времени.
Синтаксис :
int checkdate(int month, int day, int year);
Функция checkdate() проверяет правильность даты, заданной в ее аргументах. Возвращает true если дата, указанная как "month, day, year" (месяц, число, год), правильна, иначе false. Дата считается правильной, если:
-год между 1 и 32767 включительно
-месяц между 1 и 12 включительно
-день находится в диапазоне разрешенных дней данного месяца. Високосные годы учитываются.
$month=1;
$day=10; $year=2002;
if(checkdate($month,$day,$year)) echo "Такой день есть!"; else echo "Такого дня нет!";
Выведет: Такой день есть!
$month=13; $day=10; $year=2002;
if(checkdate($month,$day,$year)) echo "Такой день есть!"; else echo "Такого дня нет!";
Выведет: Такого дня нет!
date
Формат локального времени/даты.
Синтаксис :
string date(string format [, int timestamp]);
Эта функция возвращает строку, содержащую дату и время, отформатированную согласно строке format и используя временную метку timestamp или текущее локальное время, если не задана временная метка.
В фоматной строке должны использоваться следующие символы:
•a - "до" и "после" полудня: "am" или "pm"
•A - "До" и "После" полудня: "AM" или "PM"
•d - день месяца, 2 цифры (на первом месте ноль) (от 01 до 31)
•D - день недели, текстовый, 3 буквы; т.е. "Fri"
•j - день месяца, 1-2 цифры без начальных нулей (от 1 до 31)
•F - месяц, текстовый, длинный; т.е. "January"
•h - час, 12-часовой формат (от 01 до 12)
•H - час, 24-часовой формат (от 00 до 23)
•g - час, 12-часовой формат без нулей (от 1 до 12)
•G - час, 24-часовой формат без нулей (от 0 до 23)
•i - минуты (от 00 до 59)
•I(большая i) - 1, если действует переход на летнее время, иначе 0
•L - 0, если год не високосный, или 1 в противном случае
•B - Swatch Internet time
•T - временная зона компьютера, например: MDT (доступна не всегда)
•l (строчная "L") - день недели, текстовый, длинный; т.е. "Friday"
•m - месяц, две цифры с нулями (от 01 до 12)
•n - месяц, одна-две цифры без нулей (от 1 до 12)
•M - трехбуквенное английское сокращение месяца; т.е. "Jan"
•t - число дней в указанном месяце (от 28 до 31)
•s - секунды (от 0 до 59)
•S - англоязычный порядковый суффикс числа из двух букв, текстовый,
т.е. "th", "nd"
•U - целое число секунд, прошедших с момента начала эпохи UNIX
(доступно не всегда)
•Y - год, цифровой, 4 цифры (1999)
•y - год, цифровой, 2 цифры (99)
•w - порядковое число дня в неделе,(от 0-воскресенье до 6-суббота)
•z - порядковое число дня в году (от 0 до 365)
•Z - смешение временной зоны в секунадах (от -43200 до 43200) Все остальные символы в строковом аргументе format возвращаются в результирующей строке "как есть".
Формат "Z" всегда возвращает 0 при использовании с функцией gmdate(). echo date("Сегодня d.m.Y");
//Сегодня 31.01.2002
echo date( "l dS of F Y h:i:s A" );
// Thursday 31st of January 2002 12:51:19 PM
echo "July 1, 2000 is on a " . date("l", mktime(0,0,0,7,1,2000)); // July 1, 2000 is on a Saturday
Функции date() и mktime() возможно использовать вместе для того, чтобы найти даты в будущем или прошлом.
$tomorrow = mktime(0,0,0,date("m") ,date("d")+1,date("Y")); $lastmonth = mktime(0,0,0,date("m")-1,date("d"), date("Y")); $nextyear = mktime(0,0,0,date("m"), date("d"), date("Y")+1);
localtime
Получает информацию о дате/времени.
Синтаксис :
array localtime([int timestamp [, bool is_associative]]);
Первый необязательный аргумент этой функции задает метку времени Unix. В случае, если он не указан, то используется текущее время.
Если второй необязательный параметр равен нулю (по умолчанию), то возвращаемый массив будет численно индексирован; в противном случае возвращается ассоциативный массив, где элементы имеют следующие значения:
•([1])"tm_sec" - секунды
•([2])"tm_min" - минуты
•([3])"tm_hours" - часы
•([4])"tm_mday" - день месяца
•([5])"tm_mon" - месяц в году
•([6])"tm_year" - год, цифровой
•([7])"tm_wday" - день недели
•([8])"tm_yday" - день в году
•([9])"tm_isdst" - активен ли переход на летнее время
gettimeofday
Получени даты системным вызовом.
Синтаксис :
array gettimeofday();
Эта функция возвращает ассоциативный массив, который содержит дату, возвращенную системным вызовом. Функция является интерфейсом системной функции gettimeofday(2).
Возвращаемый ассоциативный массив содержит следующие элементы:
•"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] => 23 [minutes] => 44 [hours] => 22 [mday] => 15 [wday] => 0 [mon] => 8 [year] => 2004 [yday] => 227
[weekday] => Sunday [month] => August [0] => 1092595463
)
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]);
