escapeshellcmd

(PHP 3, PHP 4 , PHP 5)

escapeshellcmd -- Elude i metacaratteri della shell

Descrizione

string escapeshellcmd ( string command)

escapeshellcmd() elude ogni carattere di una stringa che potrebbe essere usata per indurre un comando shell ad eseguire comandi arbitrari. Questa funzione dovrebbe essere usata per assicurarsi che ogni dato che giunga dall'input dell'utente venga neutralizzato prima di essere passato a funzioni come exec() o system() o all'operatore backtick . Un modello d'utilizzo potrebbe essere:

$e = escapeshellcmd($userinput);
system("echo $e"); // qui non ci preoccupiamo se $e contiene spazi
$f = escapeshellcmd($filename);
system("touch \"/tmp/$f\"; ls -l \"/tmp/$f\""); // e qui invece lo facciamo, usando le virgolette

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