passthru
passthru
(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.