Forum und email

passthru

(PHP 4, PHP 5)

passthru — Executa um programa externo e mostra a saída crúa

Descrição

void passthru ( string $command [, int &$return_var ] )

A função passthru() é similar a a função exec() no que ela executa um command . Esta função deve ser usada no lugar de exec() ou system() quando a saída do comando Unix é dados binários que precisam ser passados diretamente de volta para o browser. Um uso comum para isso é para executar algo como pbmplus que podem enviar um stream com uma imagem diretamente. Definindo o Content-type para image/gif e então chamando o programa para mostrar um gif, você pode criar scripts PHP que mostram imagens diretamente.

Parâmetros

command

O comando que será executado.

return_var

Se o argumento return_var esta presente, o status de retorno do comando Unix será colocado aqui.

Valor Retornado

Não há valor retornado.

Notas

Aviso

Se você for permitir que dados vindos do usuário sejam passados para essa função, eles precisam passar por escapeshellarg() ou escapeshellcmd() para se certificar que os usuários não tentarão enganar o sistema com comandos arbitrários.

Nota: Se você iniciar um programa com essa função e deseja que ele continue rodando em background, você precisa garantir que as saídas do programa sejam redirecionadas para um arquivo ou outro suporte a stream senão o PHP irá esperar até que a execução do programa termine.

Nota: Quando o safe mode estiver ativo, você só pode chamar executáveis dentro de safe_mode_exec_dir. Por razões práticas não é permitido haver .. no caminho do executável.

Aviso

Com safe mode ativado, a string do comando é escapada com escapeshellcmd(). Então, echo y | echo x vira echo y \| echo x.