escapeshellcmd

(PHP 3, PHP 4 >= 4.0.0)

escapeshellcmd -- escape shellovské metaznaky

Popis

string escapeshellcmd (string command)

EscapeShellCmd() oescapuje všechny znaky v řetězci, které by se daly použít ke zneužití shellového příkazu k vykonání libovolných příkazů. Tato funkce by se měla používat k zabezpečení toho, aby všechna data pocházející z uživatelského vstupu byla oescapována přetím, než budou předána funkci exec() nebo system(), nebo backtick operátoru. Standardní použití:


$e = EscapeShellCmd($userinput);
system("echo $e"); // tady nás nezajímá, jestli jsou v $e mezery
$f = EscapeShellCmd($filename);
system("touch \"/tmp/$f\"; ls -l \"/tmp/$f\""); // a tady ano, proto použijeme uvozovky
      

Viz takéescapeshellarg(), exec(), popen(), system(), a backtick operátor.