Смекни!
smekni.com

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

Пример :

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:&bsol;";$s0 = exec($se, $sa, $sr);echo "При запуске команды "$se" последняя выведенная строка была:&bsol;n", $s0,"&bsol;n Код возврата ($sr) &bsol;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] => xml [1] => tokenizer [2] => standard [3] => sockets [4] => session [5] => posix[6] => pcre [7] => overload [8] => mysql [9] => gd [10] => ftp [11] => ctype [12] => calendar [13] => bcmath [14] => zlib [15] => apache [16] => Zend Optimizer)

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.3

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&bsol;n";else echo "Этоне CGI PHP а $sapi_type";

Вот что получиться для нашего случая:

Это не CGI PHP а apache

php_uname
Определение операционной системы.

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

Возвращает строку, содержащую название операционной системы, например "FreeBSD lauryn.e-neverland.net 4.9-RELEASE-p1 FreeBSD 4.9-RELEASE-p1 #2: Sun i386".

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-адрес: 83.151.11.175

Список переменных окружения можно посмотреть в Приложения->Переменные окружения, или при помощи функции phpinfo().
Эта функция не работает в модуле PHP ISAPI.

putenv
Устанавливает переменную окружения.

Синтаксис :
void putenv(string setting);

putenv("UNIQID=$uniquid");

get_magic_quotes_gpc
Получает текущее значение параметра magic_quotes_gpc.

Синтаксис :
long get_magic_quotes_gpc();

Эта функция возвратит 0 для Off и 1 для On.

get_magic_quotes_runtime
Предназначена для получения текущего значения патаметра magic_quotes_runtime.

Синтаксис :
long get_magic_quotes_runtime();

Эта функция возвратит 0 для Off и 1 для On.

set_magic_quotes_runtime
Предназначена для установки текущего значения патаметра magic_quotes_runtime.

Синтаксис :
long set_magic_quotes_runtime(int new_setting);

Для установки magic_quotes_runtime в Off задайте параметр new_setting равным 0, а для установки в On равным 1.

php_logo_guid
Функция получения GUID логотипа PHP.

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

Строка

echo php_logo_guid();

возвратит

PHPE9568F34-D428-11d2-A769-00AA001ACF42

zend_logo_guid
Функция получения GUID логотипа Zend.

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

Строка

echo zend_logo_guid();

возвратит

PHPE9568F35-D428-11d2-A769-00AA001ACF42