|
(PHP 3, PHP 4)
passthru - выполняет внешнюю программу и выводит сырой вывод.
Описание
void passthru (string command [, int return_var])
Функция passthru() похожа на функцию
exec()
тем, что выполняет команду
command
. Если имеется аргумент
return_var
, то здесь будет помещён return-статус Unix-команды. Эта функция
должна использоваться вместо
exec()
или
system()
, если вывод Unix-команды является бинарными данными, которые должны
передаваться непосредственно обратно в браузер. Её обычное использование - выполнение чего-нибудь вроде
pbmplus-утилит, которые могут давать непосредственный вывод потока изображения. Установив в Content-type значение
image/gif и вызвав затем pbmplus-программу для вывода gif, вы можете создать PHP-скрипт, выводящий изображения напрямую.
|
Предупреждение!
|
|
Если вы разрешаете прямую передачу данных из пользовательского ввода в
эту функцию, то затем вы должны использовать
escapeshellarg()
или
escapeshellcmd()
, чтобы проверить, не пытается ли пользователь проделать какой-нибудь трюк с
вашей системой, вводя произвольные команды.
|
Примечание:
если вы начинаете программу с использования этой функции и хотите оставить её работать в фоновом режиме, вам необходимо убедиться, что вывод этой
программы перенаправляется в файл или в некоторый другой поток вывода, иначе PHP
зависнет до тех пор, пока не закончится выполнение этой программы.
См. также
exec()
,
system()
,
popen()
,
escapeshellcmd()
и операцию backtick.
|
|