exec

(PHP 3, PHP 4 )

exec -- Esegue un programma esterno

Descrizione

string exec ( string command [, string array [, int return_var]])

exec() esegue il comando passato da command, sebbene esso non invii nulla in output Restituisce semplicemente l'ultima linea dal risultato del comando. Se hai bisogno di eseguire un comando ed avere tutti i dati dal comando passato direttamente senza alcuna interferenza, usa la funzione passthru().

Se l'argomento array è presente, allora tale vettore specificato verrà riempito con ogni linea del output del comando. Nota che se il vettore contiene già degli elementi, exec() li aggiungerà in coda vettore. Se non si vuole che la funzione aggiunga elementi, eseguire un unset() sul vettore prima di passarlo ad exec().

Se viene passato l'argomento return_var assieme all'argomento array, allora lo stato del comando eseguito verra scitto in questa variabile.

Attenzione

Osserva che se intendi allocare dati che giungano dal utente per essere passate a questa funzione, dovresti usare escapeshellarg() o escapeshellcmd() per assicurarti che l'utente non possa forzare il sistema ad eseguire comandi arbitrari.

Nota: Nota anche che se inizi un programma usando questa funzione e lo vuoi lasciare in esecuzione in background, devi assicurarti che l'output del programa venga rediretto ad un file o a qualche altro flusso di output, altrimenti PHP attendera fino alla fine fine dell'esecuzione del programma.

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