passthru

(PHP 3, PHP 4 , PHP 5)

passthru -- Esegue un programma esterno e mostra l'output non elaborato

Descrizione

void passthru ( string command [, int return_var])

La funzione passthru() è simile alla funzione exec() inquanto esegue command. Se il parametro return_var è specificato, lo stato ritornato dal comando Unix verrà posto lì. Questa funzione deve essere usata al posto di exec() o di system() quando l'output del comando Unix consiste in dati binari da passare direttamente al browser. Un suo uso frequente consiste nel eseguire, ad esempio, le utility pbmplus che possono restituire un flusso diretto all'immagine. Impostado il tipo di contenuto a image/gif e successivamente chiamando un programma pbmplus per generare una gif puoi realizzare uno script PHP che genera direttamente immagini.

Avvertimento

Se si intende permettere ai dati provenienti dall'input dell'utente di essere passati a questa funzione, allora si dovrebbe usare escapeshellarg() o escapeshellcmd(), questo al fine di assicurarsi che gli utenti non possano maliziosamente indurrethe il sistema ad eseguire comandi arbitrari.

Nota: Nota che se avvii un programma usando questa funzione e intendi lasciarlo girare in background, devi accertarti che l'output del programma sia rediretto in un file o a qualche altro flusso di output o PHP attenderà fino alla fine dell'esecuzione del programma.

Vedere anche exec(), system(), popen(), escapeshellcmd(), e l'operatore backtick.