Forum und email

passthru

(PHP 4, PHP 5)

passthru — Ejecutar un programa externo y mostrar la salida pura

Descripción

void passthru ( string $comando [, int &$var_retorno ] )

La función passthru() es similar a la función exec() en tanto que ejecuta un comando . Esta función debería ser usada en lugar de exec() o system() cuando la salida desde el comando Unix consiste en datos binarios que necesitan ser pasados directamente de vuelta al navegador. Un uso común de esto es ejecutar algo como las utilidades pbmplus que pueden generar la salida de una secuencia de imagen directamente. Definiendo la cabecera Content-type como image/gif y luego llamando un programa pbmplus para generar un gif, es posible crear scripts PHP que desplieguen imágenes directamente.

Lista de parámetros

comando

El comando a ser ejecutado.

var_retorno

Si el argumento var_retorno está presente, el status de retorno del comando Unix será colocado aquí.

Valores retornados

No value is returned.

Notes

Warning

Si se va a permitir que datos provenientes del usuario sean enviados a esta funcion, habria que utilizar escapeshellarg() o escapeshellcmd() para asegurarse que el usuario no intenta engañar al sistema para que ejecute comandos arbitrarios.

Note: Si arrancamos un programa con esta funcion y queremos dejarlo ejecutandose en segundo plano, hay que asegurarse que el resultado del mismo es redireccionado a un fichero u otra salida o PHP se parara hasta que la ejecucion del programa termine.

Note: Cuando safe mode esta activado, solamente se pueden ejecutar los programas que se encuentren en safe_mode_exec_dir. Por razones practicas, no se permite el uso de .. en el PATH del programa.

Warning

Con safe mode activado, todas las palabras que siguan al comando inicial son tratadas como un solo argumento. Asi, echo y | echo x se interpreta como echo "y | echo x".