passthru
(PHP 4, PHP 5, PHP 7)
passthru — Выполнить внешнюю программу и отобразить необработанный вывод
Описание
$command
, int &$return_var
= ?
) : void
Функция passthru() похожа на функцию
exec() в том, что она выполняет команду
command
. Эта функция должна быть
использована вместо функции exec() или
system(), когда вывод команды Unix
представляет собой двоичные данные, которые необходимо передать непосредственно в
браузер. Стандартное использование этой функции - выполнение таких утилит как
pbmplus, которые выводят непосредственно поток изображения. Установив
Content-type в image/gif
и
затем вызвав программу pbmplus для вывода gif, вы можете создать
PHP-скрипты, которые выводят изображения напрямую в браузер.
Список параметров
-
command
-
Команда, которая будет выполнена.
-
return_var
-
Если присутствует аргумент
return_var
, то код возврата Unix-команды будет помещён здесь.
Возвращаемые значения
Эта функция не возвращает значения после выполнения.
Примечания
Если вы собираетесь передавать функции пользовательские данные, используйте функции escapeshellarg() или escapeshellcmd() для того, чтобы пользователи не смогли обмануть систему, запустив произвольную команду.
Замечание:
Если вы собираетесь использовать эту функцию в программе, работающей в качестве демона, убедитесь, что стандартный вывод функции направлен в файл или другой поток, в противном случае PHP зависнет вплоть до конца выполнения программы.
Смотрите также
- exec() - Выполнить внешнюю программу
- system() - Выполнить внешнюю программу и отобразить вывод
- popen() - Открывает файловый указатель процесса
- escapeshellcmd() - Экранировать метасимволы командной строки
- Оператор исполнения