A função passthru() é similar a a função exec() no que ela executa um command. Se o argumento return_var estiver presente, o código de retorno de status do comando Unix será colocado aqui. 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.
Atenção |
Se você irá permitir que dados vindos dos usuários sejam passados para esta função, então você deve usar escapeshellarg() ou escapeshellcmd() para ter certesa que os usuários não enganem o sistema executando comandos arbitrários. |
Nota: Se você começar um programa usando esta função e quiser deixar ele sendo executado em segundo plano, você deve ter certesa que a saída do programa seja redirecionada para um arquivo ou outro stream de saída se não o PHP irá parar até que termine a execução do programa.
Veja também exec(), system(), popen(), escapeshellcmd(), e o operador backtick.