(PHP 4, PHP 5)
escapeshellcmd — Elude i metacaratteri della shell
$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:
<?php
$e = escapeshellcmd($userinput);
// qui non ci preoccupiamo se $e contiene spazi
system("echo $e");
$f = escapeshellcmd($filename);
// e qui lo facciamo, usando le virgolette
system("touch \"/tmp/$f\"; ls -l \"/tmp/$f\"");
?>
Vedere anche escapeshellarg(), exec(), popen(), system() e l'operatore backtick.