- •Содержание:
- •Математические функции : Функции округления
- •Математические функции : Случайные числа
- •Математические функции : Минимум и максимум
- •Математические функции : Степенные функции
- •Математические функции : Тригонометрия
- •Математические функции : Функции повышенной точности 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-документы : Стиль документа
Если указан необязательный аргумент lcg со значением true, к концу идентификатора будет добавляться "комбинированный хеш энтропии LCG", делающий его значение более уникальным.
Принято также дообрабатывать полученное значение криптографическими методами (например, это часто делается в идентификаторах сессий).
// без случайной части $token = md5(uniqid("")); // посложнее
$better_token = md5(uniqid(rnad()));
Эти строки генерируют 32 байта (128-битное шестнадцатеричное число): они обладают максимальной унакальностью, которая только может потребоваться.
Почтовые функции
Отсылает почту.
Синтаксис : mail($to, $subject, $msg [,$headers]);
Функция mail() посылает сообщение с телом $msg (это может быть "многострочная строка", т.е. переменная, содержащая несколько строк, разделенных символом перевода строки) по адресу $to. Можно задать сразу несколько получателей, разделив их адреса пробелами в параметре $to.
Пример :
mail("spravka_web@chat.ru spravka_web@hut.ru", "Мое сообщение",
"Первая строка\nВторая строка\nТретья строка"
);
В случае, если указан четвертый параметр, переданная в нем строка вставляется между концом стандартных почтовых заголовков (таких как To, Content-type и т.д.) и началом текста письма. Обычно этот параметр используется для задания дополнительных заголовков письма.
Пример :
mail("spravka_web@chat.ru spravka_web@hut.ru", "Тема", "Тело письма",
"From: webmaster@chat.ru\n". "Reply-To: webmaster@chat.ru\n". "X-Mailer: PHP/" . phpvarsion()
);
Функции запуска программ
escapeshellcmd
Убирает shell метасимволы.
Синтаксис :
string escapeshellcmd(string command);
Убирает любые символы в строке, которые могут быть использованы в командном интерпретаторе как произвольные команды. Эту функцию нужно использовать, что бы убедится, что все ваши данные введены правильно, и эту функцию лучше всего вставлять в функции exec() или system(). Стандартное использование этой
функции выглядит так: system(EscapeShellCmd($cmd))
exec
Запуск внешней программы.
Синтаксис :
string exec(string command [, string array [, int return_var]]);
Функция exec() скрыто от пользователя запускает программу из строки command, весь стандартный вывод отключен. Возвращает последнюю строку результата выполнения программы.
Если параметр array установлен, то указанный массив будет заполнен выводом из программы. Помните, если массив уже содержит данные, то exec() добавляет свои данные в конец массива. Для очистки массива можно использовать функцию unset().
Если параметр return_var установлен наряду с параметром array, то в него записывается результат выполнения команды.
<?php
$se = "dir c:\\";
$s0 = exec($se, $sa, $sr);
echo "При запуске команды "$se" последняя выведенная строка была:\n", $s0,"\n Код возврата ($sr) \nА это все что было выведено: ";
print_r($sa); ?>
Если требуется запустить программу в фоновом режиме (на длительное время), то поток ее вывода должен быть перенаправлен в файл (или иной поток вывода); иначе по истечении допустимого времени исполнения сценария (ожидания завершения внешней программы) он будет принудительно завершен с ошибкой.
system
Запуск внешней программы с выводом результата.
Синтаксис :
string system(string command, int [return_var]);
это функция для запуска command и вывода результата. Если используется второй параметр, то в него записывается результат выполнения команды. Вызов System() также пробует автоматически вставить в буфер вывода web сервера после каждой строки вывода, если PHP запущен как модель сервера.
passthru
Запускает внешнюю программу и выводит данные напрямую.
Синтаксис :
string passthru(string command [, int return_var]);
Функция passthru() похожа на функцию exec() для запуска command. Если параметр return_var установлен, то результат Unix команды помещается здесь. Эта функция должна использоваться вместо exec() или system() тогда, когда вывод из Unix команды является двоичными данными, которые должны быть переданы непосредственно обратно в окно просмотра(browser). Это можно использовать, например, для запуска утилиты pbmplus для вывода непосредственно потока изображения. Установка типа image/gif и вызов программы pbmplus, чтобы вывести gif-рисунок, вы можете создавать PHP скрипты, которые выводят изображения непосредственно.
Функции динамической загрузки
dl
Загрузка библиотеки расширения PHP во время выполнения.
Синтаксис :
int dl(string library);
dl("extensions/php_db.dll");
Загружает PHP расширение определенное в library.
get_loaded_extensions
Определения перечня загруженных модулей.
Синтаксис :
array get_loaded_extensions(void);
Возвращает массив, содержащий список имен модулей PHP, которые были прокомпилированны, загружены при старте PHP и загружены во время исполнения функцией dl().
print_r (get_loaded_extensions());
Выводит информацию, подобную следующей:
Array
(
[0]=> standard
[1]=> bcmath
[2]=> calendar
[3]=> ctype
[4]=> com
[5]=> ftp
[6]=> mysql
[7]=> odbc
[8]=> overload
[9]=> pcre
[10]=> session
[11]=> tokenizer
[12]=> xml
[13]=> wddx
[14]=> zlib
[15]=> exif
[16]=> gd
[17]=> zip
)
extension_loaded
Проверка загрузки модуля.
Синтаксис :
bool extension_loaded(string name);
Возвращает true, если указанный модуль name уже был загружен. Следует обращать внимание на то, как пишется имя модуля, и на регистр символов.
get_extension_funcs
Определение функций модуля.
Синтаксис :
array get_extension_funcs(string module_name);
Возвращает массив, содержащий перечисление имен функций, содержащихся в модуле module_name. Этот модуль должен быть предварительно загружен.
print_r(get_extension_funcs("xml"));
Информационные функции
phpinfo
Выводит текущее состояние всех параметров PHP.
Синтаксис :
int phpinfo([int what])
Для сокращения объема выводимой информации можно указать один из следующих разделов what (если он не указывается, то подразумевается
INFO_ALL):
•INFO_GENERAL
•INFO_CREDITS
•INFO_CONFIGURATION
•INFO_MODULES
•INFO_ENVIRONMENT
•INFO_VARIABLES
•INFO_LICENSE
•INFO_ALL
Эта функция,которая в общем-то не должна появляться в законченной программе, выводит в броузер большое количество различной информации, касающейся настроек PHP и параметров вызова сценария. Именно, в стандартный выходной поток (то есть в браузер пользователя) печатается:
•версия PHP;
•опции, которые были установлены при компиляции PHP;
•информация о дополнительных модулях;
•переменные окружения, в том числе и установленные сервером при получении запроса от пользователя на вызов сценария;
•версия операционной системы;
•состояние основных и локальных настроек интерпретатора;
•HTTP-заголовки;
•лицензия PHP.
Функция phpinfo() в основном применяется при первоначальной установке PHP для проверки его работоспособности (уж больно много она выдает информации). Проверить работу этой функции можно нажав эту ссылку.
phpversion
Возвращает текущую версию PHP.
Синтаксис : string phpversion();
Возвращает строку, содержащую название версии интерпретатора PHP.
echo phpversion();
Вот что примерно должно получиться:
4.3.6
phpcredits
HTML-распечатка разработчиков PHP.
Синтаксис :
void phpcredits(inf flag);
Выводит информацию о создателях и их вкладе в разработку пакета PHP.
phpcredits(CREDITS_GENERAL);
Флаги можно комбинировать следующим образом:
phpcredits(CREDITS_GROUP + CREDITS_DOCS + CREDITS_FULLPAGE);
Далее приведу список доступных флагов:
•CREDITS_ALL - Полный HTML-листинг.
•CREDITS_DOCS - Список разработчиков документации.
•CREDITS_FULLPAGE - Обычно используется в комбинации с другими флагами. Выбирает вариант, подготовленный к распечатке.
•CREDITS_GENERAL - Общая разработка языка PHP 4.0 и SAPI
•CREDITS_GROUP - Список разработчиков ядра.
•CREDITS_MODULES - Список модулей расширения и их авторов.
•CREDITS_SAPI - Список разработчиков PHP модуля API сервера.
php_sapi_name
Получение типа интерфейса между Web-сервером и PHP.
Синтаксис :
string php_sapi_name();
Возвращает строку, содержащую строчными буквами тип интерфейса. Для CGI PHP, это будет строка "cgi", для mod_php под Apache - "apache" и т.п.
$sapi_type = php_sapi_name(); if($sapi_type == "cgi")
echo "Это CGI PHP\n"; else
echo "Это не CGI PHP а $sapi_type";
Вот что получиться для нашего случая:
Это не CGI PHP а cgi-fcgi
php_uname
Определение операционной системы.
Синтаксис : string php_uname();
Возвращает строку, содержащую название операционной системы, например
"Windows NT MYCOMP 5.1 build 2600".
if(substr(php_uname(),0,7) != "Windows") {
die("Этот сценарий должен выполняться в Windows.");
}
ini_set
Изменение параметра конфигурации.
Синтаксис :
string ini_set(string varname, string newvalue);
Устанавливает для указанного параметра varname значение newvalue. При успехе возвращает прежнее значение, при ошибке - false.
ini_alter
Тоже, что и ini_set().
Синтаксис :
string ini_alter(string varname, string newvalue);
ini_get
Эта функция получает значения параметров конфигурации.
Синтаксис :
string ini_get(string varname);
Возвращает текущее значение парамерта конфигурации, заданное в переменной varname.
Данная функция позволяет получить все доступные в PHP парамеры. В случае ошибки возвращает false.
ini_restore
Производит восстановление парамерта конфигурации.
Синтаксис :
string ini_restore(string varname);
Устанавливает значение параметра конфигурации varname в первоначальное.
echo ini_set("precision",20).ini_get("precision"). ini_restore("precision").ini_get("precision");
// Выведет 14 20 14
get_cfg_var
Получает значения параметра непосредственно из файла php.ini.
Синтаксис :
string get_cfg_var(string varname);
Надо отметить, что в отличии от функции ini_get(), которая возвращает текущее значение параметра, функция get_cfg_var() возвращает значение параметра, которое установлено в файле конфигурации php.ini. Также эта функция не возвращает другие параметры (например, из конфигурации самого сервера).
getenv
Функция возвращает значение переменной окружения.
Синтаксис :
string getenv(string varname);
$ip = getenv("REMOTE_ADDR"); echo "Ваш IP-адрес: $ip";
Вот что получиться в результате работы:
Ваш IP-адрес: 127.0.0.1
Список переменных окружения можно посмотреть в Приложения->Переменные окружения, или при помощи функции phpinfo().
Эта функция не работает в модуле PHP ISAPI.
putenv
Устанавливает переменную окружения.
Синтаксис :
void putenv(string setting);
